+ All Categories
Home > Documents > Redes Neuronais

Redes Neuronais

Date post: 13-Mar-2016
Category:
Upload: chester-fulton
View: 28 times
Download: 0 times
Share this document with a friend
Description:
Redes Neuronais. Biological Neural Networks. 􀂄 Neuron switching time : > 10-3 secs 􀂄 Number of neurons in the human brain: ~10^10 􀂄 Connections (synapses) per neuron : ~10^4–10^5 􀂄 Face recognition : 0.1 secs 􀂄 High degree of parallel computation 􀂄 Distributed representations. - PowerPoint PPT Presentation
Popular Tags:
30
Redes Neuronais Redes Neuronais
Transcript
Page 1: Redes Neuronais

Redes NeuronaisRedes Neuronais

SAD Tagus 200405 H Galhardas

Biological Neural NetworksBiological Neural Networks 1048708 Neuron switching time gt 10-3 secs 1048708 Number of neurons in the human brain

~10^10 1048708 Connections (synapses) per neuron

~10^4ndash10^5 1048708 Face recognition 01 secs 1048708 High degree of parallel computation 1048708 Distributed representations

SAD Tagus 200405 H Galhardas

Um neuroacutenioUm neuroacutenio

The The nn-dimensional input vector -dimensional input vector xx is mapped into variable is mapped into variable yy by by means of the scalar product and a nonlinear function mappingmeans of the scalar product and a nonlinear function mapping

k-

f

weighted sum

Inputvector x

output y

Activationfunction

weightvector w

w0w1

wn

x0

x1

xn

SAD Tagus 200405 H Galhardas

Um neuroacutenioUm neuroacutenio k-

f

weighted sum

Inputvector x

output y

Activationfunction

weightvector w

w0w1

wn

x0

x1

xn

)sign(y

Examplen

0ikiixw

SAD Tagus 200405 H Galhardas

Um PerceptratildeoUm Perceptratildeo

SAD Tagus 200405 H Galhardas

Redes Neuronais - Redes Neuronais - ComposiccedilatildeoComposiccedilatildeo

Rede composta porRede composta por1 input layer1 ou mais hidden layer(s)1 output layer

Input layer Hidden layer Output layer

SAD Tagus 200405 H Galhardas

Redes Neuronais - TiposRedes Neuronais - Tipos Redes Redes 2-layer2-layer - apenas 1 hidden layer - apenas 1 hidden layer

O mais comum Redes Redes 3-layer3-layer - com 2 hidden layer - com 2 hidden layer

feed-forwardfeed-forward Sem existecircncia de ciclos

fully connectedfully connected Cada noacute transmite input para todos os noacutes da layer

seguinte

Input layer Hidden layer Output layer

SAD Tagus 200405 H Galhardas

Appropriate Problem Domains

for Neural Network Learning

1048708 Input is high-dimensional discrete or real valued (eg raw sensor input)

1048708 Output is discrete or real valued 1048708 Output is a vector of values 1048708 Form of target function is unknown 1048708 Humans do not need to interpret the

results (black box model)

SAD Tagus 200405 H Galhardas

Redes Neuronais - VantagensRedes Neuronais - Vantagens

Possui a capacidade de aprender ao longo do Possui a capacidade de aprender ao longo do tempotempo

Bons resultados mesmo com dados sujosBons resultados mesmo com dados sujos

Por vezes descobrem-se padrotildees para os quais Por vezes descobrem-se padrotildees para os quais natildeo foi sequer treinadanatildeo foi sequer treinada

SAD Tagus 200405 H Galhardas

Redes Neuronais - Redes Neuronais - DesvantagensDesvantagens

Dificuldade em efectuar treino da rede numa BD de grande dimensatildeo (tempos de treino muito grandes)

Trabalha apenas com dados nuacutemericos (necessaacuterio transformaccedilatildeo dos dados)

Natildeo existe conhecimento sobre o tratamento dos dados no interior da rede (Caixa Preta) =gt dificil de interpretar

SAD Tagus 200405 H Galhardas

Aplicaccedilatildeo de Redes Neuronais Aplicaccedilatildeo de Redes Neuronais em DMem DM

Ex1 Determinar o risco de ter CancroEx1 Determinar o risco de ter CancroMF

Idade

Altura

Peso

Fuma

Bebe

Risco de Cancro

SAD Tagus 200405 H Galhardas

Aplicaccedilatildeo de Redes Neuronais Aplicaccedilatildeo de Redes Neuronais em DMem DM

Ex2 Determinar se dado cliente possui creacuteditoEx2 Determinar se dado cliente possui creacuteditoIdade

de natildeo ter creacutedito

Reg PagamentosDeacutebitoRenda

de ter creacutedito

SAD Tagus 200405 H Galhardas

Passos para efectuar DM em Passos para efectuar DM em Redes NeuronaisRedes Neuronais

1 - Transformaccedilatildeo de dados2 - Criaccedilatildeo da Rede3 - Treino da rede4 - Uso da rede obtenccedilatildeo de resultados

BD

Transformaccedilatildeo de dados

Resultados

SAD Tagus 200405 H Galhardas

Transformaccedilatildeo de dadosTransformaccedilatildeo de dados Para a utilizaccedilatildeo de DM em Redes Neuronais eacute Para a utilizaccedilatildeo de DM em Redes Neuronais eacute

necessaacuterio converter todos os campos da BD necessaacuterio converter todos os campos da BD para para valores nuacutemericos entre 0 e 1valores nuacutemericos entre 0 e 1

ExemploExemplo

SAD Tagus 200405 H Galhardas

Transformaccedilatildeo de DadosTransformaccedilatildeo de Dados Exemplo 2 Dada a seguinte tabelahellipExemplo 2 Dada a seguinte tabelahellip

Name Hair Height Weight Lotion ResultSarah Blonde Average Light No SunburnedDana Blonde Tall Average Yes Not sunburned

Alex Brown Short Average Yes Not sunburned

Hair

Blonde 100

Brown 010

Red 001

Height

Short 100

Average 010

Tall 001

WeightLight 100

Average 010

Heavy 001

Lotion No 10

Yes 01

ClassSunburned 10

Not sunburned

01

Como converter os dados de modo a Como converter os dados de modo a permitir o uso de Rede Neuronal para permitir o uso de Rede Neuronal para inferir se determinada pessoa tem o inferir se determinada pessoa tem o cabelo enfraquecido pelo solcabelo enfraquecido pelo sol

SAD Tagus 200405 H Galhardas

Criaccedilatildeo da Rede NeuronalCriaccedilatildeo da Rede Neuronal Vamos criar uma rede 2-layerVamos criar uma rede 2-layer Input layerInput layer

Hair ndash precisamos de 3 inputs Height Weight ndash 3 inputs Lotion ndash 2 inputs

Output layerOutput layer Sunburned ndash 2 Outputs

Hidden layerHidden layer Qualquer valor eacute aceitaacutevel

5 noacutes

Ficamos com uma rede 11x5x2Ficamos com uma rede 11x5x2

HairBlonde 100

Brown 010

Red 001

HeightShort 100

Average 010

Tall 001

WeightLight 100

Average 010

Heavy 001

Lotion No 10

Yes 01

ClassSunburned 10

Not sunburned

01

Hair

Height

Weight

Lotion

Sunburnedhellip hellip

SAD Tagus 200405 H Galhardas

Treino da RedeTreino da Rede Usa-se um conjunto de amostras cujo Usa-se um conjunto de amostras cujo

valor da funccedilatildeo alvo (ou objectivo) eacute valor da funccedilatildeo alvo (ou objectivo) eacute conhecido - conhecido - amostras de treinoamostras de treino

Ex a linha da tabela relativa a Sarah pode ser usada como amostra de treino

Sarah Blonde Average Light No Sunburned

SAD Tagus 200405 H Galhardas

Treino de Rede Neuronal - Treino de Rede Neuronal - ExemploExemplo

Rede NeuronalRede Neuronal 2-layer

Apenas 1 hidden layer feed forward

Sem ciclos 3 noacutes de Input 1 noacute de Output

Utilizaccedilatildeo do algoritmo de Utilizaccedilatildeo do algoritmo de backpropagationbackpropagation o mais comum para o treino de redes neuronais

SAD Tagus 200405 H Galhardas

Algoritmo de Algoritmo de BackpropagationBackpropagation

AA BB CC XX

11 00 11 11 Dada a amostra de Dada a amostra de

treinohelliptreinohellip

Calcular o Calcular o erroerro em em cada noacutecada noacute

Alterar o Alterar o pesopeso dos dos arcosarcos

Alterar o Alterar o biasbias dos noacutes dos noacutes

O55

Treinar a nova rede com outra amostra de Treinar a nova rede com outra amostra de treinotreino

θθ

θθ

θθ0

1

1

ne

SAD Tagus 200405 H Galhardas

Multi-Layer neural Multi-Layer neural networknetwork

Output nodes

Input nodes

Hidden nodes

Output vector

Input vector xi

wij

i

jiijj OwI

jIje

O 11

))(1( jjjjj OTOOErr

jkk

kjjj wErrOOErr )1(

ijijij OErrlww )(jjj Errl)(

SAD Tagus 200405 H Galhardas

Ex Inicializaccedilatildeo da redeEx Inicializaccedilatildeo da redeNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

Inicializar todos os valores da redeInicializar todos os valores da rede Inicializar valores de w

Valor aleatoacuterio entre -05 e 05 ou entre -10 e 10 Inicializar valores de θ (bias) dos noacutes

Valor aleatoacuterio entre -05 e 05

=02

=-02

=-03=-03

=04

=01

=-05

=02

θθ =-04

θθ =02

θθ =01

SAD Tagus 200405 H Galhardas

Ex Input Forward Ex Input Forward (Propagaccedilatildeo das (Propagaccedilatildeo das entradas)entradas)Noacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

Passo 1Passo 1 Propagar o valor de input na rede Propagar o valor de input na rede

I4 = 1x02 + 0x04 + 1x(-05) ndash 04 = -07 Mesmo para I5

=02

=-02

=-03=-03

=04

=01

=-05

=02

θθ =-04

θθ =02

θθ =01

1

01

0

1

-07

SAD Tagus 200405 H Galhardas

Ex Input ForwardEx Input Forward (caacutelculo dos Outputs) (caacutelculo dos Outputs)Noacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

=02

=-02

=-03=-03

=04

=01

=-05

=02

θθ =-04

θθ =02

θθ =01

1

0550

1Passo 2Passo 2 Calcular o valor de Output Calcular o valor de Output

O4 = 1 (1 + e07) = 033 Mesmo para O5

Repetir passos 1 e 2 para Noacute 6Repetir passos 1 e 2 para Noacute 6

033

052

SAD Tagus 200405 H Galhardas

Ex Backpropagate ErrorEx Backpropagate ErrorNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

=02

=-02

=-03=-03

=04

=01

=-05

=02

θθ =-04

θθ =02

θθ =01

1

055

052

0

1

033

Passo 3Passo 3 Calcular o valor do erro no Output layer Calcular o valor do erro no Output layer

Sendo Tj o valor de Output real nesta amostra Oreal6=1 Err6 = (055)(1 ndash 055)(1 ndash 055) = 01311

Err6 = 01311

SAD Tagus 200405 H Galhardas

Ex Backpropagate ErrorEx Backpropagate ErrorNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

=02

=-02

=-03=-03

=04

=01

=-05

=02

θθ =-04

θθ =02

θθ =01

1

055

052

0

1

033

Err6 = 01311

Passo 4Passo 4 Calcular o valor do erro na Hidden layer Calcular o valor do erro na Hidden layer

Natildeo podemos usar o valor real pois os valores do hidden layer satildeo desconhecidos

Err4 = (033)(1 ndash 033)(01311)(-03) = -00087 Mesmo para Err5

Err5 = -00065

Err4 = -0087

SAD Tagus 200405 H Galhardas

Ex Actualizar valores de WEx Actualizar valores de WNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

θθ =-04

θθ =02

θθ =01

1

055

052

0

1

033

Passo 5Passo 5 Recalcular os valores de w Recalcular os valores de w

ℓ - constante de learning rate com valor entre 0 e 1 (neste exemplo ℓ=09) Δw46 = (09)(01311)(033) = 0039 W46 = w46 + Δw46 = -03 + 0039 = -0261 Mesmo para os restantes valores de w

=0180

=-0032

=-0267

=04

=01

=-052

=0233

=-0153

Err6 = 01311

Err5 = -00065

Err4 = -0087

SAD Tagus 200405 H Galhardas

Ex Actualizar valores de Ex Actualizar valores de θθNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

1

055

052

0

1

033

Passo 5Passo 5 Recalcular os valores de Recalcular os valores de θθ e

Δθ5 = (09)(-0065) = -00585 θ5 = θ5 + Δθ5 = 02 - 00585 = 0194

Mesmo para os restantes valores de θ

θθ =0194

θθ =-0408

θθ =0218

=0192

=-0138

=-0306

=04

=01

=-0508

=0194

=-0261

SAD Tagus 200405 H Galhardas

Ex Caso ParagemEx Caso Paragem

Realizar todos os passos com uma nova amostra de treino ateacute quehellipRealizar todos os passos com uma nova amostra de treino ateacute quehellip

((casos de paragemcasos de paragem)) Todos os Todos os ΔΔw satildeo inferiores a um valor preacute-determinadow satildeo inferiores a um valor preacute-determinado A percentagem de amostras mal classificadas na ultima iteraccedilatildeo eacute abaixo A percentagem de amostras mal classificadas na ultima iteraccedilatildeo eacute abaixo

de determinado valorde determinado valor Foi atingido um nuacutemero maacuteximo de iteraccedilotildeesFoi atingido um nuacutemero maacuteximo de iteraccedilotildees

Uma iteraccedilatildeo eacute o treino da rede com todas as amostras existentes uma vez

Noacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

1

055

052

0

1

033

θθ =0194

θθ =-0408

θθ =0218

=0192

=-0138

=-0306

=04

=01

=-0508

=0194

=-0261

SAD Tagus 200405 H Galhardas

FinalmentehellipFinalmentehellip Uma vez terminado o treino da RedehellipUma vez terminado o treino da Redehellip

Esta deve ser validada atraveacutes de um conjunto de dados de teste

Uma vez validada a rede pode ser utilizada para obter valores desconhecidos

SAD Tagus 200405 H Galhardas

BibliografiaBibliografia Data Mining Concepts and TechniquesData Mining Concepts and Techniques J J

Han amp M Kamber Morgan Kaufmann 2001 Han amp M Kamber Morgan Kaufmann 2001 (Cap 7)(Cap 7)

Machine Learning Tom Mitchell McGraw Machine Learning Tom Mitchell McGraw 1997 (Cap 4)1997 (Cap 4)

Trabalho de Investigaccedilatildeo de SAD0304 de Trabalho de Investigaccedilatildeo de SAD0304 de Pedro Canteiro sobre Redes NeuronaisPedro Canteiro sobre Redes Neuronais

Princiacutepios Essenciais do Data Mining Seacutergio Princiacutepios Essenciais do Data Mining Seacutergio Navega Navega httphttpwwwintelliwisecomwwwintelliwisecomsnavegasnavega

  • Slide 1
  • Biological Neural Networks
  • Um neuroacutenio
  • Slide 4
  • Um Perceptratildeo
  • Redes Neuronais - Composiccedilatildeo
  • Redes Neuronais - Tipos
  • Appropriate Problem Domains for Neural Network Learning
  • Redes Neuronais - Vantagens
  • Redes Neuronais - Desvantagens
  • Aplicaccedilatildeo de Redes Neuronais em DM
  • Slide 12
  • Passos para efectuar DM em Redes Neuronais
  • Transformaccedilatildeo de dados
  • Transformaccedilatildeo de Dados
  • Criaccedilatildeo da Rede Neuronal
  • Treino da Rede
  • Treino de Rede Neuronal - Exemplo
  • Algoritmo de Backpropagation
  • Multi-Layer neural network
  • Ex Inicializaccedilatildeo da rede
  • Ex Input Forward (Propagaccedilatildeo das entradas)
  • Ex Input Forward (caacutelculo dos Outputs)
  • Ex Backpropagate Error
  • Ex Backpropagate Error
  • Ex Actualizar valores de W
  • Ex Actualizar valores de θ
  • Ex Caso Paragem
  • Finalmentehellip
  • Bibliografia
Page 2: Redes Neuronais

SAD Tagus 200405 H Galhardas

Biological Neural NetworksBiological Neural Networks 1048708 Neuron switching time gt 10-3 secs 1048708 Number of neurons in the human brain

~10^10 1048708 Connections (synapses) per neuron

~10^4ndash10^5 1048708 Face recognition 01 secs 1048708 High degree of parallel computation 1048708 Distributed representations

SAD Tagus 200405 H Galhardas

Um neuroacutenioUm neuroacutenio

The The nn-dimensional input vector -dimensional input vector xx is mapped into variable is mapped into variable yy by by means of the scalar product and a nonlinear function mappingmeans of the scalar product and a nonlinear function mapping

k-

f

weighted sum

Inputvector x

output y

Activationfunction

weightvector w

w0w1

wn

x0

x1

xn

SAD Tagus 200405 H Galhardas

Um neuroacutenioUm neuroacutenio k-

f

weighted sum

Inputvector x

output y

Activationfunction

weightvector w

w0w1

wn

x0

x1

xn

)sign(y

Examplen

0ikiixw

SAD Tagus 200405 H Galhardas

Um PerceptratildeoUm Perceptratildeo

SAD Tagus 200405 H Galhardas

Redes Neuronais - Redes Neuronais - ComposiccedilatildeoComposiccedilatildeo

Rede composta porRede composta por1 input layer1 ou mais hidden layer(s)1 output layer

Input layer Hidden layer Output layer

SAD Tagus 200405 H Galhardas

Redes Neuronais - TiposRedes Neuronais - Tipos Redes Redes 2-layer2-layer - apenas 1 hidden layer - apenas 1 hidden layer

O mais comum Redes Redes 3-layer3-layer - com 2 hidden layer - com 2 hidden layer

feed-forwardfeed-forward Sem existecircncia de ciclos

fully connectedfully connected Cada noacute transmite input para todos os noacutes da layer

seguinte

Input layer Hidden layer Output layer

SAD Tagus 200405 H Galhardas

Appropriate Problem Domains

for Neural Network Learning

1048708 Input is high-dimensional discrete or real valued (eg raw sensor input)

1048708 Output is discrete or real valued 1048708 Output is a vector of values 1048708 Form of target function is unknown 1048708 Humans do not need to interpret the

results (black box model)

SAD Tagus 200405 H Galhardas

Redes Neuronais - VantagensRedes Neuronais - Vantagens

Possui a capacidade de aprender ao longo do Possui a capacidade de aprender ao longo do tempotempo

Bons resultados mesmo com dados sujosBons resultados mesmo com dados sujos

Por vezes descobrem-se padrotildees para os quais Por vezes descobrem-se padrotildees para os quais natildeo foi sequer treinadanatildeo foi sequer treinada

SAD Tagus 200405 H Galhardas

Redes Neuronais - Redes Neuronais - DesvantagensDesvantagens

Dificuldade em efectuar treino da rede numa BD de grande dimensatildeo (tempos de treino muito grandes)

Trabalha apenas com dados nuacutemericos (necessaacuterio transformaccedilatildeo dos dados)

Natildeo existe conhecimento sobre o tratamento dos dados no interior da rede (Caixa Preta) =gt dificil de interpretar

SAD Tagus 200405 H Galhardas

Aplicaccedilatildeo de Redes Neuronais Aplicaccedilatildeo de Redes Neuronais em DMem DM

Ex1 Determinar o risco de ter CancroEx1 Determinar o risco de ter CancroMF

Idade

Altura

Peso

Fuma

Bebe

Risco de Cancro

SAD Tagus 200405 H Galhardas

Aplicaccedilatildeo de Redes Neuronais Aplicaccedilatildeo de Redes Neuronais em DMem DM

Ex2 Determinar se dado cliente possui creacuteditoEx2 Determinar se dado cliente possui creacuteditoIdade

de natildeo ter creacutedito

Reg PagamentosDeacutebitoRenda

de ter creacutedito

SAD Tagus 200405 H Galhardas

Passos para efectuar DM em Passos para efectuar DM em Redes NeuronaisRedes Neuronais

1 - Transformaccedilatildeo de dados2 - Criaccedilatildeo da Rede3 - Treino da rede4 - Uso da rede obtenccedilatildeo de resultados

BD

Transformaccedilatildeo de dados

Resultados

SAD Tagus 200405 H Galhardas

Transformaccedilatildeo de dadosTransformaccedilatildeo de dados Para a utilizaccedilatildeo de DM em Redes Neuronais eacute Para a utilizaccedilatildeo de DM em Redes Neuronais eacute

necessaacuterio converter todos os campos da BD necessaacuterio converter todos os campos da BD para para valores nuacutemericos entre 0 e 1valores nuacutemericos entre 0 e 1

ExemploExemplo

SAD Tagus 200405 H Galhardas

Transformaccedilatildeo de DadosTransformaccedilatildeo de Dados Exemplo 2 Dada a seguinte tabelahellipExemplo 2 Dada a seguinte tabelahellip

Name Hair Height Weight Lotion ResultSarah Blonde Average Light No SunburnedDana Blonde Tall Average Yes Not sunburned

Alex Brown Short Average Yes Not sunburned

Hair

Blonde 100

Brown 010

Red 001

Height

Short 100

Average 010

Tall 001

WeightLight 100

Average 010

Heavy 001

Lotion No 10

Yes 01

ClassSunburned 10

Not sunburned

01

Como converter os dados de modo a Como converter os dados de modo a permitir o uso de Rede Neuronal para permitir o uso de Rede Neuronal para inferir se determinada pessoa tem o inferir se determinada pessoa tem o cabelo enfraquecido pelo solcabelo enfraquecido pelo sol

SAD Tagus 200405 H Galhardas

Criaccedilatildeo da Rede NeuronalCriaccedilatildeo da Rede Neuronal Vamos criar uma rede 2-layerVamos criar uma rede 2-layer Input layerInput layer

Hair ndash precisamos de 3 inputs Height Weight ndash 3 inputs Lotion ndash 2 inputs

Output layerOutput layer Sunburned ndash 2 Outputs

Hidden layerHidden layer Qualquer valor eacute aceitaacutevel

5 noacutes

Ficamos com uma rede 11x5x2Ficamos com uma rede 11x5x2

HairBlonde 100

Brown 010

Red 001

HeightShort 100

Average 010

Tall 001

WeightLight 100

Average 010

Heavy 001

Lotion No 10

Yes 01

ClassSunburned 10

Not sunburned

01

Hair

Height

Weight

Lotion

Sunburnedhellip hellip

SAD Tagus 200405 H Galhardas

Treino da RedeTreino da Rede Usa-se um conjunto de amostras cujo Usa-se um conjunto de amostras cujo

valor da funccedilatildeo alvo (ou objectivo) eacute valor da funccedilatildeo alvo (ou objectivo) eacute conhecido - conhecido - amostras de treinoamostras de treino

Ex a linha da tabela relativa a Sarah pode ser usada como amostra de treino

Sarah Blonde Average Light No Sunburned

SAD Tagus 200405 H Galhardas

Treino de Rede Neuronal - Treino de Rede Neuronal - ExemploExemplo

Rede NeuronalRede Neuronal 2-layer

Apenas 1 hidden layer feed forward

Sem ciclos 3 noacutes de Input 1 noacute de Output

Utilizaccedilatildeo do algoritmo de Utilizaccedilatildeo do algoritmo de backpropagationbackpropagation o mais comum para o treino de redes neuronais

SAD Tagus 200405 H Galhardas

Algoritmo de Algoritmo de BackpropagationBackpropagation

AA BB CC XX

11 00 11 11 Dada a amostra de Dada a amostra de

treinohelliptreinohellip

Calcular o Calcular o erroerro em em cada noacutecada noacute

Alterar o Alterar o pesopeso dos dos arcosarcos

Alterar o Alterar o biasbias dos noacutes dos noacutes

O55

Treinar a nova rede com outra amostra de Treinar a nova rede com outra amostra de treinotreino

θθ

θθ

θθ0

1

1

ne

SAD Tagus 200405 H Galhardas

Multi-Layer neural Multi-Layer neural networknetwork

Output nodes

Input nodes

Hidden nodes

Output vector

Input vector xi

wij

i

jiijj OwI

jIje

O 11

))(1( jjjjj OTOOErr

jkk

kjjj wErrOOErr )1(

ijijij OErrlww )(jjj Errl)(

SAD Tagus 200405 H Galhardas

Ex Inicializaccedilatildeo da redeEx Inicializaccedilatildeo da redeNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

Inicializar todos os valores da redeInicializar todos os valores da rede Inicializar valores de w

Valor aleatoacuterio entre -05 e 05 ou entre -10 e 10 Inicializar valores de θ (bias) dos noacutes

Valor aleatoacuterio entre -05 e 05

=02

=-02

=-03=-03

=04

=01

=-05

=02

θθ =-04

θθ =02

θθ =01

SAD Tagus 200405 H Galhardas

Ex Input Forward Ex Input Forward (Propagaccedilatildeo das (Propagaccedilatildeo das entradas)entradas)Noacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

Passo 1Passo 1 Propagar o valor de input na rede Propagar o valor de input na rede

I4 = 1x02 + 0x04 + 1x(-05) ndash 04 = -07 Mesmo para I5

=02

=-02

=-03=-03

=04

=01

=-05

=02

θθ =-04

θθ =02

θθ =01

1

01

0

1

-07

SAD Tagus 200405 H Galhardas

Ex Input ForwardEx Input Forward (caacutelculo dos Outputs) (caacutelculo dos Outputs)Noacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

=02

=-02

=-03=-03

=04

=01

=-05

=02

θθ =-04

θθ =02

θθ =01

1

0550

1Passo 2Passo 2 Calcular o valor de Output Calcular o valor de Output

O4 = 1 (1 + e07) = 033 Mesmo para O5

Repetir passos 1 e 2 para Noacute 6Repetir passos 1 e 2 para Noacute 6

033

052

SAD Tagus 200405 H Galhardas

Ex Backpropagate ErrorEx Backpropagate ErrorNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

=02

=-02

=-03=-03

=04

=01

=-05

=02

θθ =-04

θθ =02

θθ =01

1

055

052

0

1

033

Passo 3Passo 3 Calcular o valor do erro no Output layer Calcular o valor do erro no Output layer

Sendo Tj o valor de Output real nesta amostra Oreal6=1 Err6 = (055)(1 ndash 055)(1 ndash 055) = 01311

Err6 = 01311

SAD Tagus 200405 H Galhardas

Ex Backpropagate ErrorEx Backpropagate ErrorNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

=02

=-02

=-03=-03

=04

=01

=-05

=02

θθ =-04

θθ =02

θθ =01

1

055

052

0

1

033

Err6 = 01311

Passo 4Passo 4 Calcular o valor do erro na Hidden layer Calcular o valor do erro na Hidden layer

Natildeo podemos usar o valor real pois os valores do hidden layer satildeo desconhecidos

Err4 = (033)(1 ndash 033)(01311)(-03) = -00087 Mesmo para Err5

Err5 = -00065

Err4 = -0087

SAD Tagus 200405 H Galhardas

Ex Actualizar valores de WEx Actualizar valores de WNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

θθ =-04

θθ =02

θθ =01

1

055

052

0

1

033

Passo 5Passo 5 Recalcular os valores de w Recalcular os valores de w

ℓ - constante de learning rate com valor entre 0 e 1 (neste exemplo ℓ=09) Δw46 = (09)(01311)(033) = 0039 W46 = w46 + Δw46 = -03 + 0039 = -0261 Mesmo para os restantes valores de w

=0180

=-0032

=-0267

=04

=01

=-052

=0233

=-0153

Err6 = 01311

Err5 = -00065

Err4 = -0087

SAD Tagus 200405 H Galhardas

Ex Actualizar valores de Ex Actualizar valores de θθNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

1

055

052

0

1

033

Passo 5Passo 5 Recalcular os valores de Recalcular os valores de θθ e

Δθ5 = (09)(-0065) = -00585 θ5 = θ5 + Δθ5 = 02 - 00585 = 0194

Mesmo para os restantes valores de θ

θθ =0194

θθ =-0408

θθ =0218

=0192

=-0138

=-0306

=04

=01

=-0508

=0194

=-0261

SAD Tagus 200405 H Galhardas

Ex Caso ParagemEx Caso Paragem

Realizar todos os passos com uma nova amostra de treino ateacute quehellipRealizar todos os passos com uma nova amostra de treino ateacute quehellip

((casos de paragemcasos de paragem)) Todos os Todos os ΔΔw satildeo inferiores a um valor preacute-determinadow satildeo inferiores a um valor preacute-determinado A percentagem de amostras mal classificadas na ultima iteraccedilatildeo eacute abaixo A percentagem de amostras mal classificadas na ultima iteraccedilatildeo eacute abaixo

de determinado valorde determinado valor Foi atingido um nuacutemero maacuteximo de iteraccedilotildeesFoi atingido um nuacutemero maacuteximo de iteraccedilotildees

Uma iteraccedilatildeo eacute o treino da rede com todas as amostras existentes uma vez

Noacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

1

055

052

0

1

033

θθ =0194

θθ =-0408

θθ =0218

=0192

=-0138

=-0306

=04

=01

=-0508

=0194

=-0261

SAD Tagus 200405 H Galhardas

FinalmentehellipFinalmentehellip Uma vez terminado o treino da RedehellipUma vez terminado o treino da Redehellip

Esta deve ser validada atraveacutes de um conjunto de dados de teste

Uma vez validada a rede pode ser utilizada para obter valores desconhecidos

SAD Tagus 200405 H Galhardas

BibliografiaBibliografia Data Mining Concepts and TechniquesData Mining Concepts and Techniques J J

Han amp M Kamber Morgan Kaufmann 2001 Han amp M Kamber Morgan Kaufmann 2001 (Cap 7)(Cap 7)

Machine Learning Tom Mitchell McGraw Machine Learning Tom Mitchell McGraw 1997 (Cap 4)1997 (Cap 4)

Trabalho de Investigaccedilatildeo de SAD0304 de Trabalho de Investigaccedilatildeo de SAD0304 de Pedro Canteiro sobre Redes NeuronaisPedro Canteiro sobre Redes Neuronais

Princiacutepios Essenciais do Data Mining Seacutergio Princiacutepios Essenciais do Data Mining Seacutergio Navega Navega httphttpwwwintelliwisecomwwwintelliwisecomsnavegasnavega

  • Slide 1
  • Biological Neural Networks
  • Um neuroacutenio
  • Slide 4
  • Um Perceptratildeo
  • Redes Neuronais - Composiccedilatildeo
  • Redes Neuronais - Tipos
  • Appropriate Problem Domains for Neural Network Learning
  • Redes Neuronais - Vantagens
  • Redes Neuronais - Desvantagens
  • Aplicaccedilatildeo de Redes Neuronais em DM
  • Slide 12
  • Passos para efectuar DM em Redes Neuronais
  • Transformaccedilatildeo de dados
  • Transformaccedilatildeo de Dados
  • Criaccedilatildeo da Rede Neuronal
  • Treino da Rede
  • Treino de Rede Neuronal - Exemplo
  • Algoritmo de Backpropagation
  • Multi-Layer neural network
  • Ex Inicializaccedilatildeo da rede
  • Ex Input Forward (Propagaccedilatildeo das entradas)
  • Ex Input Forward (caacutelculo dos Outputs)
  • Ex Backpropagate Error
  • Ex Backpropagate Error
  • Ex Actualizar valores de W
  • Ex Actualizar valores de θ
  • Ex Caso Paragem
  • Finalmentehellip
  • Bibliografia
Page 3: Redes Neuronais

SAD Tagus 200405 H Galhardas

Um neuroacutenioUm neuroacutenio

The The nn-dimensional input vector -dimensional input vector xx is mapped into variable is mapped into variable yy by by means of the scalar product and a nonlinear function mappingmeans of the scalar product and a nonlinear function mapping

k-

f

weighted sum

Inputvector x

output y

Activationfunction

weightvector w

w0w1

wn

x0

x1

xn

SAD Tagus 200405 H Galhardas

Um neuroacutenioUm neuroacutenio k-

f

weighted sum

Inputvector x

output y

Activationfunction

weightvector w

w0w1

wn

x0

x1

xn

)sign(y

Examplen

0ikiixw

SAD Tagus 200405 H Galhardas

Um PerceptratildeoUm Perceptratildeo

SAD Tagus 200405 H Galhardas

Redes Neuronais - Redes Neuronais - ComposiccedilatildeoComposiccedilatildeo

Rede composta porRede composta por1 input layer1 ou mais hidden layer(s)1 output layer

Input layer Hidden layer Output layer

SAD Tagus 200405 H Galhardas

Redes Neuronais - TiposRedes Neuronais - Tipos Redes Redes 2-layer2-layer - apenas 1 hidden layer - apenas 1 hidden layer

O mais comum Redes Redes 3-layer3-layer - com 2 hidden layer - com 2 hidden layer

feed-forwardfeed-forward Sem existecircncia de ciclos

fully connectedfully connected Cada noacute transmite input para todos os noacutes da layer

seguinte

Input layer Hidden layer Output layer

SAD Tagus 200405 H Galhardas

Appropriate Problem Domains

for Neural Network Learning

1048708 Input is high-dimensional discrete or real valued (eg raw sensor input)

1048708 Output is discrete or real valued 1048708 Output is a vector of values 1048708 Form of target function is unknown 1048708 Humans do not need to interpret the

results (black box model)

SAD Tagus 200405 H Galhardas

Redes Neuronais - VantagensRedes Neuronais - Vantagens

Possui a capacidade de aprender ao longo do Possui a capacidade de aprender ao longo do tempotempo

Bons resultados mesmo com dados sujosBons resultados mesmo com dados sujos

Por vezes descobrem-se padrotildees para os quais Por vezes descobrem-se padrotildees para os quais natildeo foi sequer treinadanatildeo foi sequer treinada

SAD Tagus 200405 H Galhardas

Redes Neuronais - Redes Neuronais - DesvantagensDesvantagens

Dificuldade em efectuar treino da rede numa BD de grande dimensatildeo (tempos de treino muito grandes)

Trabalha apenas com dados nuacutemericos (necessaacuterio transformaccedilatildeo dos dados)

Natildeo existe conhecimento sobre o tratamento dos dados no interior da rede (Caixa Preta) =gt dificil de interpretar

SAD Tagus 200405 H Galhardas

Aplicaccedilatildeo de Redes Neuronais Aplicaccedilatildeo de Redes Neuronais em DMem DM

Ex1 Determinar o risco de ter CancroEx1 Determinar o risco de ter CancroMF

Idade

Altura

Peso

Fuma

Bebe

Risco de Cancro

SAD Tagus 200405 H Galhardas

Aplicaccedilatildeo de Redes Neuronais Aplicaccedilatildeo de Redes Neuronais em DMem DM

Ex2 Determinar se dado cliente possui creacuteditoEx2 Determinar se dado cliente possui creacuteditoIdade

de natildeo ter creacutedito

Reg PagamentosDeacutebitoRenda

de ter creacutedito

SAD Tagus 200405 H Galhardas

Passos para efectuar DM em Passos para efectuar DM em Redes NeuronaisRedes Neuronais

1 - Transformaccedilatildeo de dados2 - Criaccedilatildeo da Rede3 - Treino da rede4 - Uso da rede obtenccedilatildeo de resultados

BD

Transformaccedilatildeo de dados

Resultados

SAD Tagus 200405 H Galhardas

Transformaccedilatildeo de dadosTransformaccedilatildeo de dados Para a utilizaccedilatildeo de DM em Redes Neuronais eacute Para a utilizaccedilatildeo de DM em Redes Neuronais eacute

necessaacuterio converter todos os campos da BD necessaacuterio converter todos os campos da BD para para valores nuacutemericos entre 0 e 1valores nuacutemericos entre 0 e 1

ExemploExemplo

SAD Tagus 200405 H Galhardas

Transformaccedilatildeo de DadosTransformaccedilatildeo de Dados Exemplo 2 Dada a seguinte tabelahellipExemplo 2 Dada a seguinte tabelahellip

Name Hair Height Weight Lotion ResultSarah Blonde Average Light No SunburnedDana Blonde Tall Average Yes Not sunburned

Alex Brown Short Average Yes Not sunburned

Hair

Blonde 100

Brown 010

Red 001

Height

Short 100

Average 010

Tall 001

WeightLight 100

Average 010

Heavy 001

Lotion No 10

Yes 01

ClassSunburned 10

Not sunburned

01

Como converter os dados de modo a Como converter os dados de modo a permitir o uso de Rede Neuronal para permitir o uso de Rede Neuronal para inferir se determinada pessoa tem o inferir se determinada pessoa tem o cabelo enfraquecido pelo solcabelo enfraquecido pelo sol

SAD Tagus 200405 H Galhardas

Criaccedilatildeo da Rede NeuronalCriaccedilatildeo da Rede Neuronal Vamos criar uma rede 2-layerVamos criar uma rede 2-layer Input layerInput layer

Hair ndash precisamos de 3 inputs Height Weight ndash 3 inputs Lotion ndash 2 inputs

Output layerOutput layer Sunburned ndash 2 Outputs

Hidden layerHidden layer Qualquer valor eacute aceitaacutevel

5 noacutes

Ficamos com uma rede 11x5x2Ficamos com uma rede 11x5x2

HairBlonde 100

Brown 010

Red 001

HeightShort 100

Average 010

Tall 001

WeightLight 100

Average 010

Heavy 001

Lotion No 10

Yes 01

ClassSunburned 10

Not sunburned

01

Hair

Height

Weight

Lotion

Sunburnedhellip hellip

SAD Tagus 200405 H Galhardas

Treino da RedeTreino da Rede Usa-se um conjunto de amostras cujo Usa-se um conjunto de amostras cujo

valor da funccedilatildeo alvo (ou objectivo) eacute valor da funccedilatildeo alvo (ou objectivo) eacute conhecido - conhecido - amostras de treinoamostras de treino

Ex a linha da tabela relativa a Sarah pode ser usada como amostra de treino

Sarah Blonde Average Light No Sunburned

SAD Tagus 200405 H Galhardas

Treino de Rede Neuronal - Treino de Rede Neuronal - ExemploExemplo

Rede NeuronalRede Neuronal 2-layer

Apenas 1 hidden layer feed forward

Sem ciclos 3 noacutes de Input 1 noacute de Output

Utilizaccedilatildeo do algoritmo de Utilizaccedilatildeo do algoritmo de backpropagationbackpropagation o mais comum para o treino de redes neuronais

SAD Tagus 200405 H Galhardas

Algoritmo de Algoritmo de BackpropagationBackpropagation

AA BB CC XX

11 00 11 11 Dada a amostra de Dada a amostra de

treinohelliptreinohellip

Calcular o Calcular o erroerro em em cada noacutecada noacute

Alterar o Alterar o pesopeso dos dos arcosarcos

Alterar o Alterar o biasbias dos noacutes dos noacutes

O55

Treinar a nova rede com outra amostra de Treinar a nova rede com outra amostra de treinotreino

θθ

θθ

θθ0

1

1

ne

SAD Tagus 200405 H Galhardas

Multi-Layer neural Multi-Layer neural networknetwork

Output nodes

Input nodes

Hidden nodes

Output vector

Input vector xi

wij

i

jiijj OwI

jIje

O 11

))(1( jjjjj OTOOErr

jkk

kjjj wErrOOErr )1(

ijijij OErrlww )(jjj Errl)(

SAD Tagus 200405 H Galhardas

Ex Inicializaccedilatildeo da redeEx Inicializaccedilatildeo da redeNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

Inicializar todos os valores da redeInicializar todos os valores da rede Inicializar valores de w

Valor aleatoacuterio entre -05 e 05 ou entre -10 e 10 Inicializar valores de θ (bias) dos noacutes

Valor aleatoacuterio entre -05 e 05

=02

=-02

=-03=-03

=04

=01

=-05

=02

θθ =-04

θθ =02

θθ =01

SAD Tagus 200405 H Galhardas

Ex Input Forward Ex Input Forward (Propagaccedilatildeo das (Propagaccedilatildeo das entradas)entradas)Noacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

Passo 1Passo 1 Propagar o valor de input na rede Propagar o valor de input na rede

I4 = 1x02 + 0x04 + 1x(-05) ndash 04 = -07 Mesmo para I5

=02

=-02

=-03=-03

=04

=01

=-05

=02

θθ =-04

θθ =02

θθ =01

1

01

0

1

-07

SAD Tagus 200405 H Galhardas

Ex Input ForwardEx Input Forward (caacutelculo dos Outputs) (caacutelculo dos Outputs)Noacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

=02

=-02

=-03=-03

=04

=01

=-05

=02

θθ =-04

θθ =02

θθ =01

1

0550

1Passo 2Passo 2 Calcular o valor de Output Calcular o valor de Output

O4 = 1 (1 + e07) = 033 Mesmo para O5

Repetir passos 1 e 2 para Noacute 6Repetir passos 1 e 2 para Noacute 6

033

052

SAD Tagus 200405 H Galhardas

Ex Backpropagate ErrorEx Backpropagate ErrorNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

=02

=-02

=-03=-03

=04

=01

=-05

=02

θθ =-04

θθ =02

θθ =01

1

055

052

0

1

033

Passo 3Passo 3 Calcular o valor do erro no Output layer Calcular o valor do erro no Output layer

Sendo Tj o valor de Output real nesta amostra Oreal6=1 Err6 = (055)(1 ndash 055)(1 ndash 055) = 01311

Err6 = 01311

SAD Tagus 200405 H Galhardas

Ex Backpropagate ErrorEx Backpropagate ErrorNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

=02

=-02

=-03=-03

=04

=01

=-05

=02

θθ =-04

θθ =02

θθ =01

1

055

052

0

1

033

Err6 = 01311

Passo 4Passo 4 Calcular o valor do erro na Hidden layer Calcular o valor do erro na Hidden layer

Natildeo podemos usar o valor real pois os valores do hidden layer satildeo desconhecidos

Err4 = (033)(1 ndash 033)(01311)(-03) = -00087 Mesmo para Err5

Err5 = -00065

Err4 = -0087

SAD Tagus 200405 H Galhardas

Ex Actualizar valores de WEx Actualizar valores de WNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

θθ =-04

θθ =02

θθ =01

1

055

052

0

1

033

Passo 5Passo 5 Recalcular os valores de w Recalcular os valores de w

ℓ - constante de learning rate com valor entre 0 e 1 (neste exemplo ℓ=09) Δw46 = (09)(01311)(033) = 0039 W46 = w46 + Δw46 = -03 + 0039 = -0261 Mesmo para os restantes valores de w

=0180

=-0032

=-0267

=04

=01

=-052

=0233

=-0153

Err6 = 01311

Err5 = -00065

Err4 = -0087

SAD Tagus 200405 H Galhardas

Ex Actualizar valores de Ex Actualizar valores de θθNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

1

055

052

0

1

033

Passo 5Passo 5 Recalcular os valores de Recalcular os valores de θθ e

Δθ5 = (09)(-0065) = -00585 θ5 = θ5 + Δθ5 = 02 - 00585 = 0194

Mesmo para os restantes valores de θ

θθ =0194

θθ =-0408

θθ =0218

=0192

=-0138

=-0306

=04

=01

=-0508

=0194

=-0261

SAD Tagus 200405 H Galhardas

Ex Caso ParagemEx Caso Paragem

Realizar todos os passos com uma nova amostra de treino ateacute quehellipRealizar todos os passos com uma nova amostra de treino ateacute quehellip

((casos de paragemcasos de paragem)) Todos os Todos os ΔΔw satildeo inferiores a um valor preacute-determinadow satildeo inferiores a um valor preacute-determinado A percentagem de amostras mal classificadas na ultima iteraccedilatildeo eacute abaixo A percentagem de amostras mal classificadas na ultima iteraccedilatildeo eacute abaixo

de determinado valorde determinado valor Foi atingido um nuacutemero maacuteximo de iteraccedilotildeesFoi atingido um nuacutemero maacuteximo de iteraccedilotildees

Uma iteraccedilatildeo eacute o treino da rede com todas as amostras existentes uma vez

Noacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

1

055

052

0

1

033

θθ =0194

θθ =-0408

θθ =0218

=0192

=-0138

=-0306

=04

=01

=-0508

=0194

=-0261

SAD Tagus 200405 H Galhardas

FinalmentehellipFinalmentehellip Uma vez terminado o treino da RedehellipUma vez terminado o treino da Redehellip

Esta deve ser validada atraveacutes de um conjunto de dados de teste

Uma vez validada a rede pode ser utilizada para obter valores desconhecidos

SAD Tagus 200405 H Galhardas

BibliografiaBibliografia Data Mining Concepts and TechniquesData Mining Concepts and Techniques J J

Han amp M Kamber Morgan Kaufmann 2001 Han amp M Kamber Morgan Kaufmann 2001 (Cap 7)(Cap 7)

Machine Learning Tom Mitchell McGraw Machine Learning Tom Mitchell McGraw 1997 (Cap 4)1997 (Cap 4)

Trabalho de Investigaccedilatildeo de SAD0304 de Trabalho de Investigaccedilatildeo de SAD0304 de Pedro Canteiro sobre Redes NeuronaisPedro Canteiro sobre Redes Neuronais

Princiacutepios Essenciais do Data Mining Seacutergio Princiacutepios Essenciais do Data Mining Seacutergio Navega Navega httphttpwwwintelliwisecomwwwintelliwisecomsnavegasnavega

  • Slide 1
  • Biological Neural Networks
  • Um neuroacutenio
  • Slide 4
  • Um Perceptratildeo
  • Redes Neuronais - Composiccedilatildeo
  • Redes Neuronais - Tipos
  • Appropriate Problem Domains for Neural Network Learning
  • Redes Neuronais - Vantagens
  • Redes Neuronais - Desvantagens
  • Aplicaccedilatildeo de Redes Neuronais em DM
  • Slide 12
  • Passos para efectuar DM em Redes Neuronais
  • Transformaccedilatildeo de dados
  • Transformaccedilatildeo de Dados
  • Criaccedilatildeo da Rede Neuronal
  • Treino da Rede
  • Treino de Rede Neuronal - Exemplo
  • Algoritmo de Backpropagation
  • Multi-Layer neural network
  • Ex Inicializaccedilatildeo da rede
  • Ex Input Forward (Propagaccedilatildeo das entradas)
  • Ex Input Forward (caacutelculo dos Outputs)
  • Ex Backpropagate Error
  • Ex Backpropagate Error
  • Ex Actualizar valores de W
  • Ex Actualizar valores de θ
  • Ex Caso Paragem
  • Finalmentehellip
  • Bibliografia
Page 4: Redes Neuronais

SAD Tagus 200405 H Galhardas

Um neuroacutenioUm neuroacutenio k-

f

weighted sum

Inputvector x

output y

Activationfunction

weightvector w

w0w1

wn

x0

x1

xn

)sign(y

Examplen

0ikiixw

SAD Tagus 200405 H Galhardas

Um PerceptratildeoUm Perceptratildeo

SAD Tagus 200405 H Galhardas

Redes Neuronais - Redes Neuronais - ComposiccedilatildeoComposiccedilatildeo

Rede composta porRede composta por1 input layer1 ou mais hidden layer(s)1 output layer

Input layer Hidden layer Output layer

SAD Tagus 200405 H Galhardas

Redes Neuronais - TiposRedes Neuronais - Tipos Redes Redes 2-layer2-layer - apenas 1 hidden layer - apenas 1 hidden layer

O mais comum Redes Redes 3-layer3-layer - com 2 hidden layer - com 2 hidden layer

feed-forwardfeed-forward Sem existecircncia de ciclos

fully connectedfully connected Cada noacute transmite input para todos os noacutes da layer

seguinte

Input layer Hidden layer Output layer

SAD Tagus 200405 H Galhardas

Appropriate Problem Domains

for Neural Network Learning

1048708 Input is high-dimensional discrete or real valued (eg raw sensor input)

1048708 Output is discrete or real valued 1048708 Output is a vector of values 1048708 Form of target function is unknown 1048708 Humans do not need to interpret the

results (black box model)

SAD Tagus 200405 H Galhardas

Redes Neuronais - VantagensRedes Neuronais - Vantagens

Possui a capacidade de aprender ao longo do Possui a capacidade de aprender ao longo do tempotempo

Bons resultados mesmo com dados sujosBons resultados mesmo com dados sujos

Por vezes descobrem-se padrotildees para os quais Por vezes descobrem-se padrotildees para os quais natildeo foi sequer treinadanatildeo foi sequer treinada

SAD Tagus 200405 H Galhardas

Redes Neuronais - Redes Neuronais - DesvantagensDesvantagens

Dificuldade em efectuar treino da rede numa BD de grande dimensatildeo (tempos de treino muito grandes)

Trabalha apenas com dados nuacutemericos (necessaacuterio transformaccedilatildeo dos dados)

Natildeo existe conhecimento sobre o tratamento dos dados no interior da rede (Caixa Preta) =gt dificil de interpretar

SAD Tagus 200405 H Galhardas

Aplicaccedilatildeo de Redes Neuronais Aplicaccedilatildeo de Redes Neuronais em DMem DM

Ex1 Determinar o risco de ter CancroEx1 Determinar o risco de ter CancroMF

Idade

Altura

Peso

Fuma

Bebe

Risco de Cancro

SAD Tagus 200405 H Galhardas

Aplicaccedilatildeo de Redes Neuronais Aplicaccedilatildeo de Redes Neuronais em DMem DM

Ex2 Determinar se dado cliente possui creacuteditoEx2 Determinar se dado cliente possui creacuteditoIdade

de natildeo ter creacutedito

Reg PagamentosDeacutebitoRenda

de ter creacutedito

SAD Tagus 200405 H Galhardas

Passos para efectuar DM em Passos para efectuar DM em Redes NeuronaisRedes Neuronais

1 - Transformaccedilatildeo de dados2 - Criaccedilatildeo da Rede3 - Treino da rede4 - Uso da rede obtenccedilatildeo de resultados

BD

Transformaccedilatildeo de dados

Resultados

SAD Tagus 200405 H Galhardas

Transformaccedilatildeo de dadosTransformaccedilatildeo de dados Para a utilizaccedilatildeo de DM em Redes Neuronais eacute Para a utilizaccedilatildeo de DM em Redes Neuronais eacute

necessaacuterio converter todos os campos da BD necessaacuterio converter todos os campos da BD para para valores nuacutemericos entre 0 e 1valores nuacutemericos entre 0 e 1

ExemploExemplo

SAD Tagus 200405 H Galhardas

Transformaccedilatildeo de DadosTransformaccedilatildeo de Dados Exemplo 2 Dada a seguinte tabelahellipExemplo 2 Dada a seguinte tabelahellip

Name Hair Height Weight Lotion ResultSarah Blonde Average Light No SunburnedDana Blonde Tall Average Yes Not sunburned

Alex Brown Short Average Yes Not sunburned

Hair

Blonde 100

Brown 010

Red 001

Height

Short 100

Average 010

Tall 001

WeightLight 100

Average 010

Heavy 001

Lotion No 10

Yes 01

ClassSunburned 10

Not sunburned

01

Como converter os dados de modo a Como converter os dados de modo a permitir o uso de Rede Neuronal para permitir o uso de Rede Neuronal para inferir se determinada pessoa tem o inferir se determinada pessoa tem o cabelo enfraquecido pelo solcabelo enfraquecido pelo sol

SAD Tagus 200405 H Galhardas

Criaccedilatildeo da Rede NeuronalCriaccedilatildeo da Rede Neuronal Vamos criar uma rede 2-layerVamos criar uma rede 2-layer Input layerInput layer

Hair ndash precisamos de 3 inputs Height Weight ndash 3 inputs Lotion ndash 2 inputs

Output layerOutput layer Sunburned ndash 2 Outputs

Hidden layerHidden layer Qualquer valor eacute aceitaacutevel

5 noacutes

Ficamos com uma rede 11x5x2Ficamos com uma rede 11x5x2

HairBlonde 100

Brown 010

Red 001

HeightShort 100

Average 010

Tall 001

WeightLight 100

Average 010

Heavy 001

Lotion No 10

Yes 01

ClassSunburned 10

Not sunburned

01

Hair

Height

Weight

Lotion

Sunburnedhellip hellip

SAD Tagus 200405 H Galhardas

Treino da RedeTreino da Rede Usa-se um conjunto de amostras cujo Usa-se um conjunto de amostras cujo

valor da funccedilatildeo alvo (ou objectivo) eacute valor da funccedilatildeo alvo (ou objectivo) eacute conhecido - conhecido - amostras de treinoamostras de treino

Ex a linha da tabela relativa a Sarah pode ser usada como amostra de treino

Sarah Blonde Average Light No Sunburned

SAD Tagus 200405 H Galhardas

Treino de Rede Neuronal - Treino de Rede Neuronal - ExemploExemplo

Rede NeuronalRede Neuronal 2-layer

Apenas 1 hidden layer feed forward

Sem ciclos 3 noacutes de Input 1 noacute de Output

Utilizaccedilatildeo do algoritmo de Utilizaccedilatildeo do algoritmo de backpropagationbackpropagation o mais comum para o treino de redes neuronais

SAD Tagus 200405 H Galhardas

Algoritmo de Algoritmo de BackpropagationBackpropagation

AA BB CC XX

11 00 11 11 Dada a amostra de Dada a amostra de

treinohelliptreinohellip

Calcular o Calcular o erroerro em em cada noacutecada noacute

Alterar o Alterar o pesopeso dos dos arcosarcos

Alterar o Alterar o biasbias dos noacutes dos noacutes

O55

Treinar a nova rede com outra amostra de Treinar a nova rede com outra amostra de treinotreino

θθ

θθ

θθ0

1

1

ne

SAD Tagus 200405 H Galhardas

Multi-Layer neural Multi-Layer neural networknetwork

Output nodes

Input nodes

Hidden nodes

Output vector

Input vector xi

wij

i

jiijj OwI

jIje

O 11

))(1( jjjjj OTOOErr

jkk

kjjj wErrOOErr )1(

ijijij OErrlww )(jjj Errl)(

SAD Tagus 200405 H Galhardas

Ex Inicializaccedilatildeo da redeEx Inicializaccedilatildeo da redeNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

Inicializar todos os valores da redeInicializar todos os valores da rede Inicializar valores de w

Valor aleatoacuterio entre -05 e 05 ou entre -10 e 10 Inicializar valores de θ (bias) dos noacutes

Valor aleatoacuterio entre -05 e 05

=02

=-02

=-03=-03

=04

=01

=-05

=02

θθ =-04

θθ =02

θθ =01

SAD Tagus 200405 H Galhardas

Ex Input Forward Ex Input Forward (Propagaccedilatildeo das (Propagaccedilatildeo das entradas)entradas)Noacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

Passo 1Passo 1 Propagar o valor de input na rede Propagar o valor de input na rede

I4 = 1x02 + 0x04 + 1x(-05) ndash 04 = -07 Mesmo para I5

=02

=-02

=-03=-03

=04

=01

=-05

=02

θθ =-04

θθ =02

θθ =01

1

01

0

1

-07

SAD Tagus 200405 H Galhardas

Ex Input ForwardEx Input Forward (caacutelculo dos Outputs) (caacutelculo dos Outputs)Noacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

=02

=-02

=-03=-03

=04

=01

=-05

=02

θθ =-04

θθ =02

θθ =01

1

0550

1Passo 2Passo 2 Calcular o valor de Output Calcular o valor de Output

O4 = 1 (1 + e07) = 033 Mesmo para O5

Repetir passos 1 e 2 para Noacute 6Repetir passos 1 e 2 para Noacute 6

033

052

SAD Tagus 200405 H Galhardas

Ex Backpropagate ErrorEx Backpropagate ErrorNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

=02

=-02

=-03=-03

=04

=01

=-05

=02

θθ =-04

θθ =02

θθ =01

1

055

052

0

1

033

Passo 3Passo 3 Calcular o valor do erro no Output layer Calcular o valor do erro no Output layer

Sendo Tj o valor de Output real nesta amostra Oreal6=1 Err6 = (055)(1 ndash 055)(1 ndash 055) = 01311

Err6 = 01311

SAD Tagus 200405 H Galhardas

Ex Backpropagate ErrorEx Backpropagate ErrorNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

=02

=-02

=-03=-03

=04

=01

=-05

=02

θθ =-04

θθ =02

θθ =01

1

055

052

0

1

033

Err6 = 01311

Passo 4Passo 4 Calcular o valor do erro na Hidden layer Calcular o valor do erro na Hidden layer

Natildeo podemos usar o valor real pois os valores do hidden layer satildeo desconhecidos

Err4 = (033)(1 ndash 033)(01311)(-03) = -00087 Mesmo para Err5

Err5 = -00065

Err4 = -0087

SAD Tagus 200405 H Galhardas

Ex Actualizar valores de WEx Actualizar valores de WNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

θθ =-04

θθ =02

θθ =01

1

055

052

0

1

033

Passo 5Passo 5 Recalcular os valores de w Recalcular os valores de w

ℓ - constante de learning rate com valor entre 0 e 1 (neste exemplo ℓ=09) Δw46 = (09)(01311)(033) = 0039 W46 = w46 + Δw46 = -03 + 0039 = -0261 Mesmo para os restantes valores de w

=0180

=-0032

=-0267

=04

=01

=-052

=0233

=-0153

Err6 = 01311

Err5 = -00065

Err4 = -0087

SAD Tagus 200405 H Galhardas

Ex Actualizar valores de Ex Actualizar valores de θθNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

1

055

052

0

1

033

Passo 5Passo 5 Recalcular os valores de Recalcular os valores de θθ e

Δθ5 = (09)(-0065) = -00585 θ5 = θ5 + Δθ5 = 02 - 00585 = 0194

Mesmo para os restantes valores de θ

θθ =0194

θθ =-0408

θθ =0218

=0192

=-0138

=-0306

=04

=01

=-0508

=0194

=-0261

SAD Tagus 200405 H Galhardas

Ex Caso ParagemEx Caso Paragem

Realizar todos os passos com uma nova amostra de treino ateacute quehellipRealizar todos os passos com uma nova amostra de treino ateacute quehellip

((casos de paragemcasos de paragem)) Todos os Todos os ΔΔw satildeo inferiores a um valor preacute-determinadow satildeo inferiores a um valor preacute-determinado A percentagem de amostras mal classificadas na ultima iteraccedilatildeo eacute abaixo A percentagem de amostras mal classificadas na ultima iteraccedilatildeo eacute abaixo

de determinado valorde determinado valor Foi atingido um nuacutemero maacuteximo de iteraccedilotildeesFoi atingido um nuacutemero maacuteximo de iteraccedilotildees

Uma iteraccedilatildeo eacute o treino da rede com todas as amostras existentes uma vez

Noacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

1

055

052

0

1

033

θθ =0194

θθ =-0408

θθ =0218

=0192

=-0138

=-0306

=04

=01

=-0508

=0194

=-0261

SAD Tagus 200405 H Galhardas

FinalmentehellipFinalmentehellip Uma vez terminado o treino da RedehellipUma vez terminado o treino da Redehellip

Esta deve ser validada atraveacutes de um conjunto de dados de teste

Uma vez validada a rede pode ser utilizada para obter valores desconhecidos

SAD Tagus 200405 H Galhardas

BibliografiaBibliografia Data Mining Concepts and TechniquesData Mining Concepts and Techniques J J

Han amp M Kamber Morgan Kaufmann 2001 Han amp M Kamber Morgan Kaufmann 2001 (Cap 7)(Cap 7)

Machine Learning Tom Mitchell McGraw Machine Learning Tom Mitchell McGraw 1997 (Cap 4)1997 (Cap 4)

Trabalho de Investigaccedilatildeo de SAD0304 de Trabalho de Investigaccedilatildeo de SAD0304 de Pedro Canteiro sobre Redes NeuronaisPedro Canteiro sobre Redes Neuronais

Princiacutepios Essenciais do Data Mining Seacutergio Princiacutepios Essenciais do Data Mining Seacutergio Navega Navega httphttpwwwintelliwisecomwwwintelliwisecomsnavegasnavega

  • Slide 1
  • Biological Neural Networks
  • Um neuroacutenio
  • Slide 4
  • Um Perceptratildeo
  • Redes Neuronais - Composiccedilatildeo
  • Redes Neuronais - Tipos
  • Appropriate Problem Domains for Neural Network Learning
  • Redes Neuronais - Vantagens
  • Redes Neuronais - Desvantagens
  • Aplicaccedilatildeo de Redes Neuronais em DM
  • Slide 12
  • Passos para efectuar DM em Redes Neuronais
  • Transformaccedilatildeo de dados
  • Transformaccedilatildeo de Dados
  • Criaccedilatildeo da Rede Neuronal
  • Treino da Rede
  • Treino de Rede Neuronal - Exemplo
  • Algoritmo de Backpropagation
  • Multi-Layer neural network
  • Ex Inicializaccedilatildeo da rede
  • Ex Input Forward (Propagaccedilatildeo das entradas)
  • Ex Input Forward (caacutelculo dos Outputs)
  • Ex Backpropagate Error
  • Ex Backpropagate Error
  • Ex Actualizar valores de W
  • Ex Actualizar valores de θ
  • Ex Caso Paragem
  • Finalmentehellip
  • Bibliografia
Page 5: Redes Neuronais

SAD Tagus 200405 H Galhardas

Um PerceptratildeoUm Perceptratildeo

SAD Tagus 200405 H Galhardas

Redes Neuronais - Redes Neuronais - ComposiccedilatildeoComposiccedilatildeo

Rede composta porRede composta por1 input layer1 ou mais hidden layer(s)1 output layer

Input layer Hidden layer Output layer

SAD Tagus 200405 H Galhardas

Redes Neuronais - TiposRedes Neuronais - Tipos Redes Redes 2-layer2-layer - apenas 1 hidden layer - apenas 1 hidden layer

O mais comum Redes Redes 3-layer3-layer - com 2 hidden layer - com 2 hidden layer

feed-forwardfeed-forward Sem existecircncia de ciclos

fully connectedfully connected Cada noacute transmite input para todos os noacutes da layer

seguinte

Input layer Hidden layer Output layer

SAD Tagus 200405 H Galhardas

Appropriate Problem Domains

for Neural Network Learning

1048708 Input is high-dimensional discrete or real valued (eg raw sensor input)

1048708 Output is discrete or real valued 1048708 Output is a vector of values 1048708 Form of target function is unknown 1048708 Humans do not need to interpret the

results (black box model)

SAD Tagus 200405 H Galhardas

Redes Neuronais - VantagensRedes Neuronais - Vantagens

Possui a capacidade de aprender ao longo do Possui a capacidade de aprender ao longo do tempotempo

Bons resultados mesmo com dados sujosBons resultados mesmo com dados sujos

Por vezes descobrem-se padrotildees para os quais Por vezes descobrem-se padrotildees para os quais natildeo foi sequer treinadanatildeo foi sequer treinada

SAD Tagus 200405 H Galhardas

Redes Neuronais - Redes Neuronais - DesvantagensDesvantagens

Dificuldade em efectuar treino da rede numa BD de grande dimensatildeo (tempos de treino muito grandes)

Trabalha apenas com dados nuacutemericos (necessaacuterio transformaccedilatildeo dos dados)

Natildeo existe conhecimento sobre o tratamento dos dados no interior da rede (Caixa Preta) =gt dificil de interpretar

SAD Tagus 200405 H Galhardas

Aplicaccedilatildeo de Redes Neuronais Aplicaccedilatildeo de Redes Neuronais em DMem DM

Ex1 Determinar o risco de ter CancroEx1 Determinar o risco de ter CancroMF

Idade

Altura

Peso

Fuma

Bebe

Risco de Cancro

SAD Tagus 200405 H Galhardas

Aplicaccedilatildeo de Redes Neuronais Aplicaccedilatildeo de Redes Neuronais em DMem DM

Ex2 Determinar se dado cliente possui creacuteditoEx2 Determinar se dado cliente possui creacuteditoIdade

de natildeo ter creacutedito

Reg PagamentosDeacutebitoRenda

de ter creacutedito

SAD Tagus 200405 H Galhardas

Passos para efectuar DM em Passos para efectuar DM em Redes NeuronaisRedes Neuronais

1 - Transformaccedilatildeo de dados2 - Criaccedilatildeo da Rede3 - Treino da rede4 - Uso da rede obtenccedilatildeo de resultados

BD

Transformaccedilatildeo de dados

Resultados

SAD Tagus 200405 H Galhardas

Transformaccedilatildeo de dadosTransformaccedilatildeo de dados Para a utilizaccedilatildeo de DM em Redes Neuronais eacute Para a utilizaccedilatildeo de DM em Redes Neuronais eacute

necessaacuterio converter todos os campos da BD necessaacuterio converter todos os campos da BD para para valores nuacutemericos entre 0 e 1valores nuacutemericos entre 0 e 1

ExemploExemplo

SAD Tagus 200405 H Galhardas

Transformaccedilatildeo de DadosTransformaccedilatildeo de Dados Exemplo 2 Dada a seguinte tabelahellipExemplo 2 Dada a seguinte tabelahellip

Name Hair Height Weight Lotion ResultSarah Blonde Average Light No SunburnedDana Blonde Tall Average Yes Not sunburned

Alex Brown Short Average Yes Not sunburned

Hair

Blonde 100

Brown 010

Red 001

Height

Short 100

Average 010

Tall 001

WeightLight 100

Average 010

Heavy 001

Lotion No 10

Yes 01

ClassSunburned 10

Not sunburned

01

Como converter os dados de modo a Como converter os dados de modo a permitir o uso de Rede Neuronal para permitir o uso de Rede Neuronal para inferir se determinada pessoa tem o inferir se determinada pessoa tem o cabelo enfraquecido pelo solcabelo enfraquecido pelo sol

SAD Tagus 200405 H Galhardas

Criaccedilatildeo da Rede NeuronalCriaccedilatildeo da Rede Neuronal Vamos criar uma rede 2-layerVamos criar uma rede 2-layer Input layerInput layer

Hair ndash precisamos de 3 inputs Height Weight ndash 3 inputs Lotion ndash 2 inputs

Output layerOutput layer Sunburned ndash 2 Outputs

Hidden layerHidden layer Qualquer valor eacute aceitaacutevel

5 noacutes

Ficamos com uma rede 11x5x2Ficamos com uma rede 11x5x2

HairBlonde 100

Brown 010

Red 001

HeightShort 100

Average 010

Tall 001

WeightLight 100

Average 010

Heavy 001

Lotion No 10

Yes 01

ClassSunburned 10

Not sunburned

01

Hair

Height

Weight

Lotion

Sunburnedhellip hellip

SAD Tagus 200405 H Galhardas

Treino da RedeTreino da Rede Usa-se um conjunto de amostras cujo Usa-se um conjunto de amostras cujo

valor da funccedilatildeo alvo (ou objectivo) eacute valor da funccedilatildeo alvo (ou objectivo) eacute conhecido - conhecido - amostras de treinoamostras de treino

Ex a linha da tabela relativa a Sarah pode ser usada como amostra de treino

Sarah Blonde Average Light No Sunburned

SAD Tagus 200405 H Galhardas

Treino de Rede Neuronal - Treino de Rede Neuronal - ExemploExemplo

Rede NeuronalRede Neuronal 2-layer

Apenas 1 hidden layer feed forward

Sem ciclos 3 noacutes de Input 1 noacute de Output

Utilizaccedilatildeo do algoritmo de Utilizaccedilatildeo do algoritmo de backpropagationbackpropagation o mais comum para o treino de redes neuronais

SAD Tagus 200405 H Galhardas

Algoritmo de Algoritmo de BackpropagationBackpropagation

AA BB CC XX

11 00 11 11 Dada a amostra de Dada a amostra de

treinohelliptreinohellip

Calcular o Calcular o erroerro em em cada noacutecada noacute

Alterar o Alterar o pesopeso dos dos arcosarcos

Alterar o Alterar o biasbias dos noacutes dos noacutes

O55

Treinar a nova rede com outra amostra de Treinar a nova rede com outra amostra de treinotreino

θθ

θθ

θθ0

1

1

ne

SAD Tagus 200405 H Galhardas

Multi-Layer neural Multi-Layer neural networknetwork

Output nodes

Input nodes

Hidden nodes

Output vector

Input vector xi

wij

i

jiijj OwI

jIje

O 11

))(1( jjjjj OTOOErr

jkk

kjjj wErrOOErr )1(

ijijij OErrlww )(jjj Errl)(

SAD Tagus 200405 H Galhardas

Ex Inicializaccedilatildeo da redeEx Inicializaccedilatildeo da redeNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

Inicializar todos os valores da redeInicializar todos os valores da rede Inicializar valores de w

Valor aleatoacuterio entre -05 e 05 ou entre -10 e 10 Inicializar valores de θ (bias) dos noacutes

Valor aleatoacuterio entre -05 e 05

=02

=-02

=-03=-03

=04

=01

=-05

=02

θθ =-04

θθ =02

θθ =01

SAD Tagus 200405 H Galhardas

Ex Input Forward Ex Input Forward (Propagaccedilatildeo das (Propagaccedilatildeo das entradas)entradas)Noacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

Passo 1Passo 1 Propagar o valor de input na rede Propagar o valor de input na rede

I4 = 1x02 + 0x04 + 1x(-05) ndash 04 = -07 Mesmo para I5

=02

=-02

=-03=-03

=04

=01

=-05

=02

θθ =-04

θθ =02

θθ =01

1

01

0

1

-07

SAD Tagus 200405 H Galhardas

Ex Input ForwardEx Input Forward (caacutelculo dos Outputs) (caacutelculo dos Outputs)Noacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

=02

=-02

=-03=-03

=04

=01

=-05

=02

θθ =-04

θθ =02

θθ =01

1

0550

1Passo 2Passo 2 Calcular o valor de Output Calcular o valor de Output

O4 = 1 (1 + e07) = 033 Mesmo para O5

Repetir passos 1 e 2 para Noacute 6Repetir passos 1 e 2 para Noacute 6

033

052

SAD Tagus 200405 H Galhardas

Ex Backpropagate ErrorEx Backpropagate ErrorNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

=02

=-02

=-03=-03

=04

=01

=-05

=02

θθ =-04

θθ =02

θθ =01

1

055

052

0

1

033

Passo 3Passo 3 Calcular o valor do erro no Output layer Calcular o valor do erro no Output layer

Sendo Tj o valor de Output real nesta amostra Oreal6=1 Err6 = (055)(1 ndash 055)(1 ndash 055) = 01311

Err6 = 01311

SAD Tagus 200405 H Galhardas

Ex Backpropagate ErrorEx Backpropagate ErrorNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

=02

=-02

=-03=-03

=04

=01

=-05

=02

θθ =-04

θθ =02

θθ =01

1

055

052

0

1

033

Err6 = 01311

Passo 4Passo 4 Calcular o valor do erro na Hidden layer Calcular o valor do erro na Hidden layer

Natildeo podemos usar o valor real pois os valores do hidden layer satildeo desconhecidos

Err4 = (033)(1 ndash 033)(01311)(-03) = -00087 Mesmo para Err5

Err5 = -00065

Err4 = -0087

SAD Tagus 200405 H Galhardas

Ex Actualizar valores de WEx Actualizar valores de WNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

θθ =-04

θθ =02

θθ =01

1

055

052

0

1

033

Passo 5Passo 5 Recalcular os valores de w Recalcular os valores de w

ℓ - constante de learning rate com valor entre 0 e 1 (neste exemplo ℓ=09) Δw46 = (09)(01311)(033) = 0039 W46 = w46 + Δw46 = -03 + 0039 = -0261 Mesmo para os restantes valores de w

=0180

=-0032

=-0267

=04

=01

=-052

=0233

=-0153

Err6 = 01311

Err5 = -00065

Err4 = -0087

SAD Tagus 200405 H Galhardas

Ex Actualizar valores de Ex Actualizar valores de θθNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

1

055

052

0

1

033

Passo 5Passo 5 Recalcular os valores de Recalcular os valores de θθ e

Δθ5 = (09)(-0065) = -00585 θ5 = θ5 + Δθ5 = 02 - 00585 = 0194

Mesmo para os restantes valores de θ

θθ =0194

θθ =-0408

θθ =0218

=0192

=-0138

=-0306

=04

=01

=-0508

=0194

=-0261

SAD Tagus 200405 H Galhardas

Ex Caso ParagemEx Caso Paragem

Realizar todos os passos com uma nova amostra de treino ateacute quehellipRealizar todos os passos com uma nova amostra de treino ateacute quehellip

((casos de paragemcasos de paragem)) Todos os Todos os ΔΔw satildeo inferiores a um valor preacute-determinadow satildeo inferiores a um valor preacute-determinado A percentagem de amostras mal classificadas na ultima iteraccedilatildeo eacute abaixo A percentagem de amostras mal classificadas na ultima iteraccedilatildeo eacute abaixo

de determinado valorde determinado valor Foi atingido um nuacutemero maacuteximo de iteraccedilotildeesFoi atingido um nuacutemero maacuteximo de iteraccedilotildees

Uma iteraccedilatildeo eacute o treino da rede com todas as amostras existentes uma vez

Noacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

1

055

052

0

1

033

θθ =0194

θθ =-0408

θθ =0218

=0192

=-0138

=-0306

=04

=01

=-0508

=0194

=-0261

SAD Tagus 200405 H Galhardas

FinalmentehellipFinalmentehellip Uma vez terminado o treino da RedehellipUma vez terminado o treino da Redehellip

Esta deve ser validada atraveacutes de um conjunto de dados de teste

Uma vez validada a rede pode ser utilizada para obter valores desconhecidos

SAD Tagus 200405 H Galhardas

BibliografiaBibliografia Data Mining Concepts and TechniquesData Mining Concepts and Techniques J J

Han amp M Kamber Morgan Kaufmann 2001 Han amp M Kamber Morgan Kaufmann 2001 (Cap 7)(Cap 7)

Machine Learning Tom Mitchell McGraw Machine Learning Tom Mitchell McGraw 1997 (Cap 4)1997 (Cap 4)

Trabalho de Investigaccedilatildeo de SAD0304 de Trabalho de Investigaccedilatildeo de SAD0304 de Pedro Canteiro sobre Redes NeuronaisPedro Canteiro sobre Redes Neuronais

Princiacutepios Essenciais do Data Mining Seacutergio Princiacutepios Essenciais do Data Mining Seacutergio Navega Navega httphttpwwwintelliwisecomwwwintelliwisecomsnavegasnavega

  • Slide 1
  • Biological Neural Networks
  • Um neuroacutenio
  • Slide 4
  • Um Perceptratildeo
  • Redes Neuronais - Composiccedilatildeo
  • Redes Neuronais - Tipos
  • Appropriate Problem Domains for Neural Network Learning
  • Redes Neuronais - Vantagens
  • Redes Neuronais - Desvantagens
  • Aplicaccedilatildeo de Redes Neuronais em DM
  • Slide 12
  • Passos para efectuar DM em Redes Neuronais
  • Transformaccedilatildeo de dados
  • Transformaccedilatildeo de Dados
  • Criaccedilatildeo da Rede Neuronal
  • Treino da Rede
  • Treino de Rede Neuronal - Exemplo
  • Algoritmo de Backpropagation
  • Multi-Layer neural network
  • Ex Inicializaccedilatildeo da rede
  • Ex Input Forward (Propagaccedilatildeo das entradas)
  • Ex Input Forward (caacutelculo dos Outputs)
  • Ex Backpropagate Error
  • Ex Backpropagate Error
  • Ex Actualizar valores de W
  • Ex Actualizar valores de θ
  • Ex Caso Paragem
  • Finalmentehellip
  • Bibliografia
Page 6: Redes Neuronais

SAD Tagus 200405 H Galhardas

Redes Neuronais - Redes Neuronais - ComposiccedilatildeoComposiccedilatildeo

Rede composta porRede composta por1 input layer1 ou mais hidden layer(s)1 output layer

Input layer Hidden layer Output layer

SAD Tagus 200405 H Galhardas

Redes Neuronais - TiposRedes Neuronais - Tipos Redes Redes 2-layer2-layer - apenas 1 hidden layer - apenas 1 hidden layer

O mais comum Redes Redes 3-layer3-layer - com 2 hidden layer - com 2 hidden layer

feed-forwardfeed-forward Sem existecircncia de ciclos

fully connectedfully connected Cada noacute transmite input para todos os noacutes da layer

seguinte

Input layer Hidden layer Output layer

SAD Tagus 200405 H Galhardas

Appropriate Problem Domains

for Neural Network Learning

1048708 Input is high-dimensional discrete or real valued (eg raw sensor input)

1048708 Output is discrete or real valued 1048708 Output is a vector of values 1048708 Form of target function is unknown 1048708 Humans do not need to interpret the

results (black box model)

SAD Tagus 200405 H Galhardas

Redes Neuronais - VantagensRedes Neuronais - Vantagens

Possui a capacidade de aprender ao longo do Possui a capacidade de aprender ao longo do tempotempo

Bons resultados mesmo com dados sujosBons resultados mesmo com dados sujos

Por vezes descobrem-se padrotildees para os quais Por vezes descobrem-se padrotildees para os quais natildeo foi sequer treinadanatildeo foi sequer treinada

SAD Tagus 200405 H Galhardas

Redes Neuronais - Redes Neuronais - DesvantagensDesvantagens

Dificuldade em efectuar treino da rede numa BD de grande dimensatildeo (tempos de treino muito grandes)

Trabalha apenas com dados nuacutemericos (necessaacuterio transformaccedilatildeo dos dados)

Natildeo existe conhecimento sobre o tratamento dos dados no interior da rede (Caixa Preta) =gt dificil de interpretar

SAD Tagus 200405 H Galhardas

Aplicaccedilatildeo de Redes Neuronais Aplicaccedilatildeo de Redes Neuronais em DMem DM

Ex1 Determinar o risco de ter CancroEx1 Determinar o risco de ter CancroMF

Idade

Altura

Peso

Fuma

Bebe

Risco de Cancro

SAD Tagus 200405 H Galhardas

Aplicaccedilatildeo de Redes Neuronais Aplicaccedilatildeo de Redes Neuronais em DMem DM

Ex2 Determinar se dado cliente possui creacuteditoEx2 Determinar se dado cliente possui creacuteditoIdade

de natildeo ter creacutedito

Reg PagamentosDeacutebitoRenda

de ter creacutedito

SAD Tagus 200405 H Galhardas

Passos para efectuar DM em Passos para efectuar DM em Redes NeuronaisRedes Neuronais

1 - Transformaccedilatildeo de dados2 - Criaccedilatildeo da Rede3 - Treino da rede4 - Uso da rede obtenccedilatildeo de resultados

BD

Transformaccedilatildeo de dados

Resultados

SAD Tagus 200405 H Galhardas

Transformaccedilatildeo de dadosTransformaccedilatildeo de dados Para a utilizaccedilatildeo de DM em Redes Neuronais eacute Para a utilizaccedilatildeo de DM em Redes Neuronais eacute

necessaacuterio converter todos os campos da BD necessaacuterio converter todos os campos da BD para para valores nuacutemericos entre 0 e 1valores nuacutemericos entre 0 e 1

ExemploExemplo

SAD Tagus 200405 H Galhardas

Transformaccedilatildeo de DadosTransformaccedilatildeo de Dados Exemplo 2 Dada a seguinte tabelahellipExemplo 2 Dada a seguinte tabelahellip

Name Hair Height Weight Lotion ResultSarah Blonde Average Light No SunburnedDana Blonde Tall Average Yes Not sunburned

Alex Brown Short Average Yes Not sunburned

Hair

Blonde 100

Brown 010

Red 001

Height

Short 100

Average 010

Tall 001

WeightLight 100

Average 010

Heavy 001

Lotion No 10

Yes 01

ClassSunburned 10

Not sunburned

01

Como converter os dados de modo a Como converter os dados de modo a permitir o uso de Rede Neuronal para permitir o uso de Rede Neuronal para inferir se determinada pessoa tem o inferir se determinada pessoa tem o cabelo enfraquecido pelo solcabelo enfraquecido pelo sol

SAD Tagus 200405 H Galhardas

Criaccedilatildeo da Rede NeuronalCriaccedilatildeo da Rede Neuronal Vamos criar uma rede 2-layerVamos criar uma rede 2-layer Input layerInput layer

Hair ndash precisamos de 3 inputs Height Weight ndash 3 inputs Lotion ndash 2 inputs

Output layerOutput layer Sunburned ndash 2 Outputs

Hidden layerHidden layer Qualquer valor eacute aceitaacutevel

5 noacutes

Ficamos com uma rede 11x5x2Ficamos com uma rede 11x5x2

HairBlonde 100

Brown 010

Red 001

HeightShort 100

Average 010

Tall 001

WeightLight 100

Average 010

Heavy 001

Lotion No 10

Yes 01

ClassSunburned 10

Not sunburned

01

Hair

Height

Weight

Lotion

Sunburnedhellip hellip

SAD Tagus 200405 H Galhardas

Treino da RedeTreino da Rede Usa-se um conjunto de amostras cujo Usa-se um conjunto de amostras cujo

valor da funccedilatildeo alvo (ou objectivo) eacute valor da funccedilatildeo alvo (ou objectivo) eacute conhecido - conhecido - amostras de treinoamostras de treino

Ex a linha da tabela relativa a Sarah pode ser usada como amostra de treino

Sarah Blonde Average Light No Sunburned

SAD Tagus 200405 H Galhardas

Treino de Rede Neuronal - Treino de Rede Neuronal - ExemploExemplo

Rede NeuronalRede Neuronal 2-layer

Apenas 1 hidden layer feed forward

Sem ciclos 3 noacutes de Input 1 noacute de Output

Utilizaccedilatildeo do algoritmo de Utilizaccedilatildeo do algoritmo de backpropagationbackpropagation o mais comum para o treino de redes neuronais

SAD Tagus 200405 H Galhardas

Algoritmo de Algoritmo de BackpropagationBackpropagation

AA BB CC XX

11 00 11 11 Dada a amostra de Dada a amostra de

treinohelliptreinohellip

Calcular o Calcular o erroerro em em cada noacutecada noacute

Alterar o Alterar o pesopeso dos dos arcosarcos

Alterar o Alterar o biasbias dos noacutes dos noacutes

O55

Treinar a nova rede com outra amostra de Treinar a nova rede com outra amostra de treinotreino

θθ

θθ

θθ0

1

1

ne

SAD Tagus 200405 H Galhardas

Multi-Layer neural Multi-Layer neural networknetwork

Output nodes

Input nodes

Hidden nodes

Output vector

Input vector xi

wij

i

jiijj OwI

jIje

O 11

))(1( jjjjj OTOOErr

jkk

kjjj wErrOOErr )1(

ijijij OErrlww )(jjj Errl)(

SAD Tagus 200405 H Galhardas

Ex Inicializaccedilatildeo da redeEx Inicializaccedilatildeo da redeNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

Inicializar todos os valores da redeInicializar todos os valores da rede Inicializar valores de w

Valor aleatoacuterio entre -05 e 05 ou entre -10 e 10 Inicializar valores de θ (bias) dos noacutes

Valor aleatoacuterio entre -05 e 05

=02

=-02

=-03=-03

=04

=01

=-05

=02

θθ =-04

θθ =02

θθ =01

SAD Tagus 200405 H Galhardas

Ex Input Forward Ex Input Forward (Propagaccedilatildeo das (Propagaccedilatildeo das entradas)entradas)Noacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

Passo 1Passo 1 Propagar o valor de input na rede Propagar o valor de input na rede

I4 = 1x02 + 0x04 + 1x(-05) ndash 04 = -07 Mesmo para I5

=02

=-02

=-03=-03

=04

=01

=-05

=02

θθ =-04

θθ =02

θθ =01

1

01

0

1

-07

SAD Tagus 200405 H Galhardas

Ex Input ForwardEx Input Forward (caacutelculo dos Outputs) (caacutelculo dos Outputs)Noacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

=02

=-02

=-03=-03

=04

=01

=-05

=02

θθ =-04

θθ =02

θθ =01

1

0550

1Passo 2Passo 2 Calcular o valor de Output Calcular o valor de Output

O4 = 1 (1 + e07) = 033 Mesmo para O5

Repetir passos 1 e 2 para Noacute 6Repetir passos 1 e 2 para Noacute 6

033

052

SAD Tagus 200405 H Galhardas

Ex Backpropagate ErrorEx Backpropagate ErrorNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

=02

=-02

=-03=-03

=04

=01

=-05

=02

θθ =-04

θθ =02

θθ =01

1

055

052

0

1

033

Passo 3Passo 3 Calcular o valor do erro no Output layer Calcular o valor do erro no Output layer

Sendo Tj o valor de Output real nesta amostra Oreal6=1 Err6 = (055)(1 ndash 055)(1 ndash 055) = 01311

Err6 = 01311

SAD Tagus 200405 H Galhardas

Ex Backpropagate ErrorEx Backpropagate ErrorNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

=02

=-02

=-03=-03

=04

=01

=-05

=02

θθ =-04

θθ =02

θθ =01

1

055

052

0

1

033

Err6 = 01311

Passo 4Passo 4 Calcular o valor do erro na Hidden layer Calcular o valor do erro na Hidden layer

Natildeo podemos usar o valor real pois os valores do hidden layer satildeo desconhecidos

Err4 = (033)(1 ndash 033)(01311)(-03) = -00087 Mesmo para Err5

Err5 = -00065

Err4 = -0087

SAD Tagus 200405 H Galhardas

Ex Actualizar valores de WEx Actualizar valores de WNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

θθ =-04

θθ =02

θθ =01

1

055

052

0

1

033

Passo 5Passo 5 Recalcular os valores de w Recalcular os valores de w

ℓ - constante de learning rate com valor entre 0 e 1 (neste exemplo ℓ=09) Δw46 = (09)(01311)(033) = 0039 W46 = w46 + Δw46 = -03 + 0039 = -0261 Mesmo para os restantes valores de w

=0180

=-0032

=-0267

=04

=01

=-052

=0233

=-0153

Err6 = 01311

Err5 = -00065

Err4 = -0087

SAD Tagus 200405 H Galhardas

Ex Actualizar valores de Ex Actualizar valores de θθNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

1

055

052

0

1

033

Passo 5Passo 5 Recalcular os valores de Recalcular os valores de θθ e

Δθ5 = (09)(-0065) = -00585 θ5 = θ5 + Δθ5 = 02 - 00585 = 0194

Mesmo para os restantes valores de θ

θθ =0194

θθ =-0408

θθ =0218

=0192

=-0138

=-0306

=04

=01

=-0508

=0194

=-0261

SAD Tagus 200405 H Galhardas

Ex Caso ParagemEx Caso Paragem

Realizar todos os passos com uma nova amostra de treino ateacute quehellipRealizar todos os passos com uma nova amostra de treino ateacute quehellip

((casos de paragemcasos de paragem)) Todos os Todos os ΔΔw satildeo inferiores a um valor preacute-determinadow satildeo inferiores a um valor preacute-determinado A percentagem de amostras mal classificadas na ultima iteraccedilatildeo eacute abaixo A percentagem de amostras mal classificadas na ultima iteraccedilatildeo eacute abaixo

de determinado valorde determinado valor Foi atingido um nuacutemero maacuteximo de iteraccedilotildeesFoi atingido um nuacutemero maacuteximo de iteraccedilotildees

Uma iteraccedilatildeo eacute o treino da rede com todas as amostras existentes uma vez

Noacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

1

055

052

0

1

033

θθ =0194

θθ =-0408

θθ =0218

=0192

=-0138

=-0306

=04

=01

=-0508

=0194

=-0261

SAD Tagus 200405 H Galhardas

FinalmentehellipFinalmentehellip Uma vez terminado o treino da RedehellipUma vez terminado o treino da Redehellip

Esta deve ser validada atraveacutes de um conjunto de dados de teste

Uma vez validada a rede pode ser utilizada para obter valores desconhecidos

SAD Tagus 200405 H Galhardas

BibliografiaBibliografia Data Mining Concepts and TechniquesData Mining Concepts and Techniques J J

Han amp M Kamber Morgan Kaufmann 2001 Han amp M Kamber Morgan Kaufmann 2001 (Cap 7)(Cap 7)

Machine Learning Tom Mitchell McGraw Machine Learning Tom Mitchell McGraw 1997 (Cap 4)1997 (Cap 4)

Trabalho de Investigaccedilatildeo de SAD0304 de Trabalho de Investigaccedilatildeo de SAD0304 de Pedro Canteiro sobre Redes NeuronaisPedro Canteiro sobre Redes Neuronais

Princiacutepios Essenciais do Data Mining Seacutergio Princiacutepios Essenciais do Data Mining Seacutergio Navega Navega httphttpwwwintelliwisecomwwwintelliwisecomsnavegasnavega

  • Slide 1
  • Biological Neural Networks
  • Um neuroacutenio
  • Slide 4
  • Um Perceptratildeo
  • Redes Neuronais - Composiccedilatildeo
  • Redes Neuronais - Tipos
  • Appropriate Problem Domains for Neural Network Learning
  • Redes Neuronais - Vantagens
  • Redes Neuronais - Desvantagens
  • Aplicaccedilatildeo de Redes Neuronais em DM
  • Slide 12
  • Passos para efectuar DM em Redes Neuronais
  • Transformaccedilatildeo de dados
  • Transformaccedilatildeo de Dados
  • Criaccedilatildeo da Rede Neuronal
  • Treino da Rede
  • Treino de Rede Neuronal - Exemplo
  • Algoritmo de Backpropagation
  • Multi-Layer neural network
  • Ex Inicializaccedilatildeo da rede
  • Ex Input Forward (Propagaccedilatildeo das entradas)
  • Ex Input Forward (caacutelculo dos Outputs)
  • Ex Backpropagate Error
  • Ex Backpropagate Error
  • Ex Actualizar valores de W
  • Ex Actualizar valores de θ
  • Ex Caso Paragem
  • Finalmentehellip
  • Bibliografia
Page 7: Redes Neuronais

SAD Tagus 200405 H Galhardas

Redes Neuronais - TiposRedes Neuronais - Tipos Redes Redes 2-layer2-layer - apenas 1 hidden layer - apenas 1 hidden layer

O mais comum Redes Redes 3-layer3-layer - com 2 hidden layer - com 2 hidden layer

feed-forwardfeed-forward Sem existecircncia de ciclos

fully connectedfully connected Cada noacute transmite input para todos os noacutes da layer

seguinte

Input layer Hidden layer Output layer

SAD Tagus 200405 H Galhardas

Appropriate Problem Domains

for Neural Network Learning

1048708 Input is high-dimensional discrete or real valued (eg raw sensor input)

1048708 Output is discrete or real valued 1048708 Output is a vector of values 1048708 Form of target function is unknown 1048708 Humans do not need to interpret the

results (black box model)

SAD Tagus 200405 H Galhardas

Redes Neuronais - VantagensRedes Neuronais - Vantagens

Possui a capacidade de aprender ao longo do Possui a capacidade de aprender ao longo do tempotempo

Bons resultados mesmo com dados sujosBons resultados mesmo com dados sujos

Por vezes descobrem-se padrotildees para os quais Por vezes descobrem-se padrotildees para os quais natildeo foi sequer treinadanatildeo foi sequer treinada

SAD Tagus 200405 H Galhardas

Redes Neuronais - Redes Neuronais - DesvantagensDesvantagens

Dificuldade em efectuar treino da rede numa BD de grande dimensatildeo (tempos de treino muito grandes)

Trabalha apenas com dados nuacutemericos (necessaacuterio transformaccedilatildeo dos dados)

Natildeo existe conhecimento sobre o tratamento dos dados no interior da rede (Caixa Preta) =gt dificil de interpretar

SAD Tagus 200405 H Galhardas

Aplicaccedilatildeo de Redes Neuronais Aplicaccedilatildeo de Redes Neuronais em DMem DM

Ex1 Determinar o risco de ter CancroEx1 Determinar o risco de ter CancroMF

Idade

Altura

Peso

Fuma

Bebe

Risco de Cancro

SAD Tagus 200405 H Galhardas

Aplicaccedilatildeo de Redes Neuronais Aplicaccedilatildeo de Redes Neuronais em DMem DM

Ex2 Determinar se dado cliente possui creacuteditoEx2 Determinar se dado cliente possui creacuteditoIdade

de natildeo ter creacutedito

Reg PagamentosDeacutebitoRenda

de ter creacutedito

SAD Tagus 200405 H Galhardas

Passos para efectuar DM em Passos para efectuar DM em Redes NeuronaisRedes Neuronais

1 - Transformaccedilatildeo de dados2 - Criaccedilatildeo da Rede3 - Treino da rede4 - Uso da rede obtenccedilatildeo de resultados

BD

Transformaccedilatildeo de dados

Resultados

SAD Tagus 200405 H Galhardas

Transformaccedilatildeo de dadosTransformaccedilatildeo de dados Para a utilizaccedilatildeo de DM em Redes Neuronais eacute Para a utilizaccedilatildeo de DM em Redes Neuronais eacute

necessaacuterio converter todos os campos da BD necessaacuterio converter todos os campos da BD para para valores nuacutemericos entre 0 e 1valores nuacutemericos entre 0 e 1

ExemploExemplo

SAD Tagus 200405 H Galhardas

Transformaccedilatildeo de DadosTransformaccedilatildeo de Dados Exemplo 2 Dada a seguinte tabelahellipExemplo 2 Dada a seguinte tabelahellip

Name Hair Height Weight Lotion ResultSarah Blonde Average Light No SunburnedDana Blonde Tall Average Yes Not sunburned

Alex Brown Short Average Yes Not sunburned

Hair

Blonde 100

Brown 010

Red 001

Height

Short 100

Average 010

Tall 001

WeightLight 100

Average 010

Heavy 001

Lotion No 10

Yes 01

ClassSunburned 10

Not sunburned

01

Como converter os dados de modo a Como converter os dados de modo a permitir o uso de Rede Neuronal para permitir o uso de Rede Neuronal para inferir se determinada pessoa tem o inferir se determinada pessoa tem o cabelo enfraquecido pelo solcabelo enfraquecido pelo sol

SAD Tagus 200405 H Galhardas

Criaccedilatildeo da Rede NeuronalCriaccedilatildeo da Rede Neuronal Vamos criar uma rede 2-layerVamos criar uma rede 2-layer Input layerInput layer

Hair ndash precisamos de 3 inputs Height Weight ndash 3 inputs Lotion ndash 2 inputs

Output layerOutput layer Sunburned ndash 2 Outputs

Hidden layerHidden layer Qualquer valor eacute aceitaacutevel

5 noacutes

Ficamos com uma rede 11x5x2Ficamos com uma rede 11x5x2

HairBlonde 100

Brown 010

Red 001

HeightShort 100

Average 010

Tall 001

WeightLight 100

Average 010

Heavy 001

Lotion No 10

Yes 01

ClassSunburned 10

Not sunburned

01

Hair

Height

Weight

Lotion

Sunburnedhellip hellip

SAD Tagus 200405 H Galhardas

Treino da RedeTreino da Rede Usa-se um conjunto de amostras cujo Usa-se um conjunto de amostras cujo

valor da funccedilatildeo alvo (ou objectivo) eacute valor da funccedilatildeo alvo (ou objectivo) eacute conhecido - conhecido - amostras de treinoamostras de treino

Ex a linha da tabela relativa a Sarah pode ser usada como amostra de treino

Sarah Blonde Average Light No Sunburned

SAD Tagus 200405 H Galhardas

Treino de Rede Neuronal - Treino de Rede Neuronal - ExemploExemplo

Rede NeuronalRede Neuronal 2-layer

Apenas 1 hidden layer feed forward

Sem ciclos 3 noacutes de Input 1 noacute de Output

Utilizaccedilatildeo do algoritmo de Utilizaccedilatildeo do algoritmo de backpropagationbackpropagation o mais comum para o treino de redes neuronais

SAD Tagus 200405 H Galhardas

Algoritmo de Algoritmo de BackpropagationBackpropagation

AA BB CC XX

11 00 11 11 Dada a amostra de Dada a amostra de

treinohelliptreinohellip

Calcular o Calcular o erroerro em em cada noacutecada noacute

Alterar o Alterar o pesopeso dos dos arcosarcos

Alterar o Alterar o biasbias dos noacutes dos noacutes

O55

Treinar a nova rede com outra amostra de Treinar a nova rede com outra amostra de treinotreino

θθ

θθ

θθ0

1

1

ne

SAD Tagus 200405 H Galhardas

Multi-Layer neural Multi-Layer neural networknetwork

Output nodes

Input nodes

Hidden nodes

Output vector

Input vector xi

wij

i

jiijj OwI

jIje

O 11

))(1( jjjjj OTOOErr

jkk

kjjj wErrOOErr )1(

ijijij OErrlww )(jjj Errl)(

SAD Tagus 200405 H Galhardas

Ex Inicializaccedilatildeo da redeEx Inicializaccedilatildeo da redeNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

Inicializar todos os valores da redeInicializar todos os valores da rede Inicializar valores de w

Valor aleatoacuterio entre -05 e 05 ou entre -10 e 10 Inicializar valores de θ (bias) dos noacutes

Valor aleatoacuterio entre -05 e 05

=02

=-02

=-03=-03

=04

=01

=-05

=02

θθ =-04

θθ =02

θθ =01

SAD Tagus 200405 H Galhardas

Ex Input Forward Ex Input Forward (Propagaccedilatildeo das (Propagaccedilatildeo das entradas)entradas)Noacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

Passo 1Passo 1 Propagar o valor de input na rede Propagar o valor de input na rede

I4 = 1x02 + 0x04 + 1x(-05) ndash 04 = -07 Mesmo para I5

=02

=-02

=-03=-03

=04

=01

=-05

=02

θθ =-04

θθ =02

θθ =01

1

01

0

1

-07

SAD Tagus 200405 H Galhardas

Ex Input ForwardEx Input Forward (caacutelculo dos Outputs) (caacutelculo dos Outputs)Noacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

=02

=-02

=-03=-03

=04

=01

=-05

=02

θθ =-04

θθ =02

θθ =01

1

0550

1Passo 2Passo 2 Calcular o valor de Output Calcular o valor de Output

O4 = 1 (1 + e07) = 033 Mesmo para O5

Repetir passos 1 e 2 para Noacute 6Repetir passos 1 e 2 para Noacute 6

033

052

SAD Tagus 200405 H Galhardas

Ex Backpropagate ErrorEx Backpropagate ErrorNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

=02

=-02

=-03=-03

=04

=01

=-05

=02

θθ =-04

θθ =02

θθ =01

1

055

052

0

1

033

Passo 3Passo 3 Calcular o valor do erro no Output layer Calcular o valor do erro no Output layer

Sendo Tj o valor de Output real nesta amostra Oreal6=1 Err6 = (055)(1 ndash 055)(1 ndash 055) = 01311

Err6 = 01311

SAD Tagus 200405 H Galhardas

Ex Backpropagate ErrorEx Backpropagate ErrorNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

=02

=-02

=-03=-03

=04

=01

=-05

=02

θθ =-04

θθ =02

θθ =01

1

055

052

0

1

033

Err6 = 01311

Passo 4Passo 4 Calcular o valor do erro na Hidden layer Calcular o valor do erro na Hidden layer

Natildeo podemos usar o valor real pois os valores do hidden layer satildeo desconhecidos

Err4 = (033)(1 ndash 033)(01311)(-03) = -00087 Mesmo para Err5

Err5 = -00065

Err4 = -0087

SAD Tagus 200405 H Galhardas

Ex Actualizar valores de WEx Actualizar valores de WNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

θθ =-04

θθ =02

θθ =01

1

055

052

0

1

033

Passo 5Passo 5 Recalcular os valores de w Recalcular os valores de w

ℓ - constante de learning rate com valor entre 0 e 1 (neste exemplo ℓ=09) Δw46 = (09)(01311)(033) = 0039 W46 = w46 + Δw46 = -03 + 0039 = -0261 Mesmo para os restantes valores de w

=0180

=-0032

=-0267

=04

=01

=-052

=0233

=-0153

Err6 = 01311

Err5 = -00065

Err4 = -0087

SAD Tagus 200405 H Galhardas

Ex Actualizar valores de Ex Actualizar valores de θθNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

1

055

052

0

1

033

Passo 5Passo 5 Recalcular os valores de Recalcular os valores de θθ e

Δθ5 = (09)(-0065) = -00585 θ5 = θ5 + Δθ5 = 02 - 00585 = 0194

Mesmo para os restantes valores de θ

θθ =0194

θθ =-0408

θθ =0218

=0192

=-0138

=-0306

=04

=01

=-0508

=0194

=-0261

SAD Tagus 200405 H Galhardas

Ex Caso ParagemEx Caso Paragem

Realizar todos os passos com uma nova amostra de treino ateacute quehellipRealizar todos os passos com uma nova amostra de treino ateacute quehellip

((casos de paragemcasos de paragem)) Todos os Todos os ΔΔw satildeo inferiores a um valor preacute-determinadow satildeo inferiores a um valor preacute-determinado A percentagem de amostras mal classificadas na ultima iteraccedilatildeo eacute abaixo A percentagem de amostras mal classificadas na ultima iteraccedilatildeo eacute abaixo

de determinado valorde determinado valor Foi atingido um nuacutemero maacuteximo de iteraccedilotildeesFoi atingido um nuacutemero maacuteximo de iteraccedilotildees

Uma iteraccedilatildeo eacute o treino da rede com todas as amostras existentes uma vez

Noacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

1

055

052

0

1

033

θθ =0194

θθ =-0408

θθ =0218

=0192

=-0138

=-0306

=04

=01

=-0508

=0194

=-0261

SAD Tagus 200405 H Galhardas

FinalmentehellipFinalmentehellip Uma vez terminado o treino da RedehellipUma vez terminado o treino da Redehellip

Esta deve ser validada atraveacutes de um conjunto de dados de teste

Uma vez validada a rede pode ser utilizada para obter valores desconhecidos

SAD Tagus 200405 H Galhardas

BibliografiaBibliografia Data Mining Concepts and TechniquesData Mining Concepts and Techniques J J

Han amp M Kamber Morgan Kaufmann 2001 Han amp M Kamber Morgan Kaufmann 2001 (Cap 7)(Cap 7)

Machine Learning Tom Mitchell McGraw Machine Learning Tom Mitchell McGraw 1997 (Cap 4)1997 (Cap 4)

Trabalho de Investigaccedilatildeo de SAD0304 de Trabalho de Investigaccedilatildeo de SAD0304 de Pedro Canteiro sobre Redes NeuronaisPedro Canteiro sobre Redes Neuronais

Princiacutepios Essenciais do Data Mining Seacutergio Princiacutepios Essenciais do Data Mining Seacutergio Navega Navega httphttpwwwintelliwisecomwwwintelliwisecomsnavegasnavega

  • Slide 1
  • Biological Neural Networks
  • Um neuroacutenio
  • Slide 4
  • Um Perceptratildeo
  • Redes Neuronais - Composiccedilatildeo
  • Redes Neuronais - Tipos
  • Appropriate Problem Domains for Neural Network Learning
  • Redes Neuronais - Vantagens
  • Redes Neuronais - Desvantagens
  • Aplicaccedilatildeo de Redes Neuronais em DM
  • Slide 12
  • Passos para efectuar DM em Redes Neuronais
  • Transformaccedilatildeo de dados
  • Transformaccedilatildeo de Dados
  • Criaccedilatildeo da Rede Neuronal
  • Treino da Rede
  • Treino de Rede Neuronal - Exemplo
  • Algoritmo de Backpropagation
  • Multi-Layer neural network
  • Ex Inicializaccedilatildeo da rede
  • Ex Input Forward (Propagaccedilatildeo das entradas)
  • Ex Input Forward (caacutelculo dos Outputs)
  • Ex Backpropagate Error
  • Ex Backpropagate Error
  • Ex Actualizar valores de W
  • Ex Actualizar valores de θ
  • Ex Caso Paragem
  • Finalmentehellip
  • Bibliografia
Page 8: Redes Neuronais

SAD Tagus 200405 H Galhardas

Appropriate Problem Domains

for Neural Network Learning

1048708 Input is high-dimensional discrete or real valued (eg raw sensor input)

1048708 Output is discrete or real valued 1048708 Output is a vector of values 1048708 Form of target function is unknown 1048708 Humans do not need to interpret the

results (black box model)

SAD Tagus 200405 H Galhardas

Redes Neuronais - VantagensRedes Neuronais - Vantagens

Possui a capacidade de aprender ao longo do Possui a capacidade de aprender ao longo do tempotempo

Bons resultados mesmo com dados sujosBons resultados mesmo com dados sujos

Por vezes descobrem-se padrotildees para os quais Por vezes descobrem-se padrotildees para os quais natildeo foi sequer treinadanatildeo foi sequer treinada

SAD Tagus 200405 H Galhardas

Redes Neuronais - Redes Neuronais - DesvantagensDesvantagens

Dificuldade em efectuar treino da rede numa BD de grande dimensatildeo (tempos de treino muito grandes)

Trabalha apenas com dados nuacutemericos (necessaacuterio transformaccedilatildeo dos dados)

Natildeo existe conhecimento sobre o tratamento dos dados no interior da rede (Caixa Preta) =gt dificil de interpretar

SAD Tagus 200405 H Galhardas

Aplicaccedilatildeo de Redes Neuronais Aplicaccedilatildeo de Redes Neuronais em DMem DM

Ex1 Determinar o risco de ter CancroEx1 Determinar o risco de ter CancroMF

Idade

Altura

Peso

Fuma

Bebe

Risco de Cancro

SAD Tagus 200405 H Galhardas

Aplicaccedilatildeo de Redes Neuronais Aplicaccedilatildeo de Redes Neuronais em DMem DM

Ex2 Determinar se dado cliente possui creacuteditoEx2 Determinar se dado cliente possui creacuteditoIdade

de natildeo ter creacutedito

Reg PagamentosDeacutebitoRenda

de ter creacutedito

SAD Tagus 200405 H Galhardas

Passos para efectuar DM em Passos para efectuar DM em Redes NeuronaisRedes Neuronais

1 - Transformaccedilatildeo de dados2 - Criaccedilatildeo da Rede3 - Treino da rede4 - Uso da rede obtenccedilatildeo de resultados

BD

Transformaccedilatildeo de dados

Resultados

SAD Tagus 200405 H Galhardas

Transformaccedilatildeo de dadosTransformaccedilatildeo de dados Para a utilizaccedilatildeo de DM em Redes Neuronais eacute Para a utilizaccedilatildeo de DM em Redes Neuronais eacute

necessaacuterio converter todos os campos da BD necessaacuterio converter todos os campos da BD para para valores nuacutemericos entre 0 e 1valores nuacutemericos entre 0 e 1

ExemploExemplo

SAD Tagus 200405 H Galhardas

Transformaccedilatildeo de DadosTransformaccedilatildeo de Dados Exemplo 2 Dada a seguinte tabelahellipExemplo 2 Dada a seguinte tabelahellip

Name Hair Height Weight Lotion ResultSarah Blonde Average Light No SunburnedDana Blonde Tall Average Yes Not sunburned

Alex Brown Short Average Yes Not sunburned

Hair

Blonde 100

Brown 010

Red 001

Height

Short 100

Average 010

Tall 001

WeightLight 100

Average 010

Heavy 001

Lotion No 10

Yes 01

ClassSunburned 10

Not sunburned

01

Como converter os dados de modo a Como converter os dados de modo a permitir o uso de Rede Neuronal para permitir o uso de Rede Neuronal para inferir se determinada pessoa tem o inferir se determinada pessoa tem o cabelo enfraquecido pelo solcabelo enfraquecido pelo sol

SAD Tagus 200405 H Galhardas

Criaccedilatildeo da Rede NeuronalCriaccedilatildeo da Rede Neuronal Vamos criar uma rede 2-layerVamos criar uma rede 2-layer Input layerInput layer

Hair ndash precisamos de 3 inputs Height Weight ndash 3 inputs Lotion ndash 2 inputs

Output layerOutput layer Sunburned ndash 2 Outputs

Hidden layerHidden layer Qualquer valor eacute aceitaacutevel

5 noacutes

Ficamos com uma rede 11x5x2Ficamos com uma rede 11x5x2

HairBlonde 100

Brown 010

Red 001

HeightShort 100

Average 010

Tall 001

WeightLight 100

Average 010

Heavy 001

Lotion No 10

Yes 01

ClassSunburned 10

Not sunburned

01

Hair

Height

Weight

Lotion

Sunburnedhellip hellip

SAD Tagus 200405 H Galhardas

Treino da RedeTreino da Rede Usa-se um conjunto de amostras cujo Usa-se um conjunto de amostras cujo

valor da funccedilatildeo alvo (ou objectivo) eacute valor da funccedilatildeo alvo (ou objectivo) eacute conhecido - conhecido - amostras de treinoamostras de treino

Ex a linha da tabela relativa a Sarah pode ser usada como amostra de treino

Sarah Blonde Average Light No Sunburned

SAD Tagus 200405 H Galhardas

Treino de Rede Neuronal - Treino de Rede Neuronal - ExemploExemplo

Rede NeuronalRede Neuronal 2-layer

Apenas 1 hidden layer feed forward

Sem ciclos 3 noacutes de Input 1 noacute de Output

Utilizaccedilatildeo do algoritmo de Utilizaccedilatildeo do algoritmo de backpropagationbackpropagation o mais comum para o treino de redes neuronais

SAD Tagus 200405 H Galhardas

Algoritmo de Algoritmo de BackpropagationBackpropagation

AA BB CC XX

11 00 11 11 Dada a amostra de Dada a amostra de

treinohelliptreinohellip

Calcular o Calcular o erroerro em em cada noacutecada noacute

Alterar o Alterar o pesopeso dos dos arcosarcos

Alterar o Alterar o biasbias dos noacutes dos noacutes

O55

Treinar a nova rede com outra amostra de Treinar a nova rede com outra amostra de treinotreino

θθ

θθ

θθ0

1

1

ne

SAD Tagus 200405 H Galhardas

Multi-Layer neural Multi-Layer neural networknetwork

Output nodes

Input nodes

Hidden nodes

Output vector

Input vector xi

wij

i

jiijj OwI

jIje

O 11

))(1( jjjjj OTOOErr

jkk

kjjj wErrOOErr )1(

ijijij OErrlww )(jjj Errl)(

SAD Tagus 200405 H Galhardas

Ex Inicializaccedilatildeo da redeEx Inicializaccedilatildeo da redeNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

Inicializar todos os valores da redeInicializar todos os valores da rede Inicializar valores de w

Valor aleatoacuterio entre -05 e 05 ou entre -10 e 10 Inicializar valores de θ (bias) dos noacutes

Valor aleatoacuterio entre -05 e 05

=02

=-02

=-03=-03

=04

=01

=-05

=02

θθ =-04

θθ =02

θθ =01

SAD Tagus 200405 H Galhardas

Ex Input Forward Ex Input Forward (Propagaccedilatildeo das (Propagaccedilatildeo das entradas)entradas)Noacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

Passo 1Passo 1 Propagar o valor de input na rede Propagar o valor de input na rede

I4 = 1x02 + 0x04 + 1x(-05) ndash 04 = -07 Mesmo para I5

=02

=-02

=-03=-03

=04

=01

=-05

=02

θθ =-04

θθ =02

θθ =01

1

01

0

1

-07

SAD Tagus 200405 H Galhardas

Ex Input ForwardEx Input Forward (caacutelculo dos Outputs) (caacutelculo dos Outputs)Noacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

=02

=-02

=-03=-03

=04

=01

=-05

=02

θθ =-04

θθ =02

θθ =01

1

0550

1Passo 2Passo 2 Calcular o valor de Output Calcular o valor de Output

O4 = 1 (1 + e07) = 033 Mesmo para O5

Repetir passos 1 e 2 para Noacute 6Repetir passos 1 e 2 para Noacute 6

033

052

SAD Tagus 200405 H Galhardas

Ex Backpropagate ErrorEx Backpropagate ErrorNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

=02

=-02

=-03=-03

=04

=01

=-05

=02

θθ =-04

θθ =02

θθ =01

1

055

052

0

1

033

Passo 3Passo 3 Calcular o valor do erro no Output layer Calcular o valor do erro no Output layer

Sendo Tj o valor de Output real nesta amostra Oreal6=1 Err6 = (055)(1 ndash 055)(1 ndash 055) = 01311

Err6 = 01311

SAD Tagus 200405 H Galhardas

Ex Backpropagate ErrorEx Backpropagate ErrorNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

=02

=-02

=-03=-03

=04

=01

=-05

=02

θθ =-04

θθ =02

θθ =01

1

055

052

0

1

033

Err6 = 01311

Passo 4Passo 4 Calcular o valor do erro na Hidden layer Calcular o valor do erro na Hidden layer

Natildeo podemos usar o valor real pois os valores do hidden layer satildeo desconhecidos

Err4 = (033)(1 ndash 033)(01311)(-03) = -00087 Mesmo para Err5

Err5 = -00065

Err4 = -0087

SAD Tagus 200405 H Galhardas

Ex Actualizar valores de WEx Actualizar valores de WNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

θθ =-04

θθ =02

θθ =01

1

055

052

0

1

033

Passo 5Passo 5 Recalcular os valores de w Recalcular os valores de w

ℓ - constante de learning rate com valor entre 0 e 1 (neste exemplo ℓ=09) Δw46 = (09)(01311)(033) = 0039 W46 = w46 + Δw46 = -03 + 0039 = -0261 Mesmo para os restantes valores de w

=0180

=-0032

=-0267

=04

=01

=-052

=0233

=-0153

Err6 = 01311

Err5 = -00065

Err4 = -0087

SAD Tagus 200405 H Galhardas

Ex Actualizar valores de Ex Actualizar valores de θθNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

1

055

052

0

1

033

Passo 5Passo 5 Recalcular os valores de Recalcular os valores de θθ e

Δθ5 = (09)(-0065) = -00585 θ5 = θ5 + Δθ5 = 02 - 00585 = 0194

Mesmo para os restantes valores de θ

θθ =0194

θθ =-0408

θθ =0218

=0192

=-0138

=-0306

=04

=01

=-0508

=0194

=-0261

SAD Tagus 200405 H Galhardas

Ex Caso ParagemEx Caso Paragem

Realizar todos os passos com uma nova amostra de treino ateacute quehellipRealizar todos os passos com uma nova amostra de treino ateacute quehellip

((casos de paragemcasos de paragem)) Todos os Todos os ΔΔw satildeo inferiores a um valor preacute-determinadow satildeo inferiores a um valor preacute-determinado A percentagem de amostras mal classificadas na ultima iteraccedilatildeo eacute abaixo A percentagem de amostras mal classificadas na ultima iteraccedilatildeo eacute abaixo

de determinado valorde determinado valor Foi atingido um nuacutemero maacuteximo de iteraccedilotildeesFoi atingido um nuacutemero maacuteximo de iteraccedilotildees

Uma iteraccedilatildeo eacute o treino da rede com todas as amostras existentes uma vez

Noacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

1

055

052

0

1

033

θθ =0194

θθ =-0408

θθ =0218

=0192

=-0138

=-0306

=04

=01

=-0508

=0194

=-0261

SAD Tagus 200405 H Galhardas

FinalmentehellipFinalmentehellip Uma vez terminado o treino da RedehellipUma vez terminado o treino da Redehellip

Esta deve ser validada atraveacutes de um conjunto de dados de teste

Uma vez validada a rede pode ser utilizada para obter valores desconhecidos

SAD Tagus 200405 H Galhardas

BibliografiaBibliografia Data Mining Concepts and TechniquesData Mining Concepts and Techniques J J

Han amp M Kamber Morgan Kaufmann 2001 Han amp M Kamber Morgan Kaufmann 2001 (Cap 7)(Cap 7)

Machine Learning Tom Mitchell McGraw Machine Learning Tom Mitchell McGraw 1997 (Cap 4)1997 (Cap 4)

Trabalho de Investigaccedilatildeo de SAD0304 de Trabalho de Investigaccedilatildeo de SAD0304 de Pedro Canteiro sobre Redes NeuronaisPedro Canteiro sobre Redes Neuronais

Princiacutepios Essenciais do Data Mining Seacutergio Princiacutepios Essenciais do Data Mining Seacutergio Navega Navega httphttpwwwintelliwisecomwwwintelliwisecomsnavegasnavega

  • Slide 1
  • Biological Neural Networks
  • Um neuroacutenio
  • Slide 4
  • Um Perceptratildeo
  • Redes Neuronais - Composiccedilatildeo
  • Redes Neuronais - Tipos
  • Appropriate Problem Domains for Neural Network Learning
  • Redes Neuronais - Vantagens
  • Redes Neuronais - Desvantagens
  • Aplicaccedilatildeo de Redes Neuronais em DM
  • Slide 12
  • Passos para efectuar DM em Redes Neuronais
  • Transformaccedilatildeo de dados
  • Transformaccedilatildeo de Dados
  • Criaccedilatildeo da Rede Neuronal
  • Treino da Rede
  • Treino de Rede Neuronal - Exemplo
  • Algoritmo de Backpropagation
  • Multi-Layer neural network
  • Ex Inicializaccedilatildeo da rede
  • Ex Input Forward (Propagaccedilatildeo das entradas)
  • Ex Input Forward (caacutelculo dos Outputs)
  • Ex Backpropagate Error
  • Ex Backpropagate Error
  • Ex Actualizar valores de W
  • Ex Actualizar valores de θ
  • Ex Caso Paragem
  • Finalmentehellip
  • Bibliografia
Page 9: Redes Neuronais

SAD Tagus 200405 H Galhardas

Redes Neuronais - VantagensRedes Neuronais - Vantagens

Possui a capacidade de aprender ao longo do Possui a capacidade de aprender ao longo do tempotempo

Bons resultados mesmo com dados sujosBons resultados mesmo com dados sujos

Por vezes descobrem-se padrotildees para os quais Por vezes descobrem-se padrotildees para os quais natildeo foi sequer treinadanatildeo foi sequer treinada

SAD Tagus 200405 H Galhardas

Redes Neuronais - Redes Neuronais - DesvantagensDesvantagens

Dificuldade em efectuar treino da rede numa BD de grande dimensatildeo (tempos de treino muito grandes)

Trabalha apenas com dados nuacutemericos (necessaacuterio transformaccedilatildeo dos dados)

Natildeo existe conhecimento sobre o tratamento dos dados no interior da rede (Caixa Preta) =gt dificil de interpretar

SAD Tagus 200405 H Galhardas

Aplicaccedilatildeo de Redes Neuronais Aplicaccedilatildeo de Redes Neuronais em DMem DM

Ex1 Determinar o risco de ter CancroEx1 Determinar o risco de ter CancroMF

Idade

Altura

Peso

Fuma

Bebe

Risco de Cancro

SAD Tagus 200405 H Galhardas

Aplicaccedilatildeo de Redes Neuronais Aplicaccedilatildeo de Redes Neuronais em DMem DM

Ex2 Determinar se dado cliente possui creacuteditoEx2 Determinar se dado cliente possui creacuteditoIdade

de natildeo ter creacutedito

Reg PagamentosDeacutebitoRenda

de ter creacutedito

SAD Tagus 200405 H Galhardas

Passos para efectuar DM em Passos para efectuar DM em Redes NeuronaisRedes Neuronais

1 - Transformaccedilatildeo de dados2 - Criaccedilatildeo da Rede3 - Treino da rede4 - Uso da rede obtenccedilatildeo de resultados

BD

Transformaccedilatildeo de dados

Resultados

SAD Tagus 200405 H Galhardas

Transformaccedilatildeo de dadosTransformaccedilatildeo de dados Para a utilizaccedilatildeo de DM em Redes Neuronais eacute Para a utilizaccedilatildeo de DM em Redes Neuronais eacute

necessaacuterio converter todos os campos da BD necessaacuterio converter todos os campos da BD para para valores nuacutemericos entre 0 e 1valores nuacutemericos entre 0 e 1

ExemploExemplo

SAD Tagus 200405 H Galhardas

Transformaccedilatildeo de DadosTransformaccedilatildeo de Dados Exemplo 2 Dada a seguinte tabelahellipExemplo 2 Dada a seguinte tabelahellip

Name Hair Height Weight Lotion ResultSarah Blonde Average Light No SunburnedDana Blonde Tall Average Yes Not sunburned

Alex Brown Short Average Yes Not sunburned

Hair

Blonde 100

Brown 010

Red 001

Height

Short 100

Average 010

Tall 001

WeightLight 100

Average 010

Heavy 001

Lotion No 10

Yes 01

ClassSunburned 10

Not sunburned

01

Como converter os dados de modo a Como converter os dados de modo a permitir o uso de Rede Neuronal para permitir o uso de Rede Neuronal para inferir se determinada pessoa tem o inferir se determinada pessoa tem o cabelo enfraquecido pelo solcabelo enfraquecido pelo sol

SAD Tagus 200405 H Galhardas

Criaccedilatildeo da Rede NeuronalCriaccedilatildeo da Rede Neuronal Vamos criar uma rede 2-layerVamos criar uma rede 2-layer Input layerInput layer

Hair ndash precisamos de 3 inputs Height Weight ndash 3 inputs Lotion ndash 2 inputs

Output layerOutput layer Sunburned ndash 2 Outputs

Hidden layerHidden layer Qualquer valor eacute aceitaacutevel

5 noacutes

Ficamos com uma rede 11x5x2Ficamos com uma rede 11x5x2

HairBlonde 100

Brown 010

Red 001

HeightShort 100

Average 010

Tall 001

WeightLight 100

Average 010

Heavy 001

Lotion No 10

Yes 01

ClassSunburned 10

Not sunburned

01

Hair

Height

Weight

Lotion

Sunburnedhellip hellip

SAD Tagus 200405 H Galhardas

Treino da RedeTreino da Rede Usa-se um conjunto de amostras cujo Usa-se um conjunto de amostras cujo

valor da funccedilatildeo alvo (ou objectivo) eacute valor da funccedilatildeo alvo (ou objectivo) eacute conhecido - conhecido - amostras de treinoamostras de treino

Ex a linha da tabela relativa a Sarah pode ser usada como amostra de treino

Sarah Blonde Average Light No Sunburned

SAD Tagus 200405 H Galhardas

Treino de Rede Neuronal - Treino de Rede Neuronal - ExemploExemplo

Rede NeuronalRede Neuronal 2-layer

Apenas 1 hidden layer feed forward

Sem ciclos 3 noacutes de Input 1 noacute de Output

Utilizaccedilatildeo do algoritmo de Utilizaccedilatildeo do algoritmo de backpropagationbackpropagation o mais comum para o treino de redes neuronais

SAD Tagus 200405 H Galhardas

Algoritmo de Algoritmo de BackpropagationBackpropagation

AA BB CC XX

11 00 11 11 Dada a amostra de Dada a amostra de

treinohelliptreinohellip

Calcular o Calcular o erroerro em em cada noacutecada noacute

Alterar o Alterar o pesopeso dos dos arcosarcos

Alterar o Alterar o biasbias dos noacutes dos noacutes

O55

Treinar a nova rede com outra amostra de Treinar a nova rede com outra amostra de treinotreino

θθ

θθ

θθ0

1

1

ne

SAD Tagus 200405 H Galhardas

Multi-Layer neural Multi-Layer neural networknetwork

Output nodes

Input nodes

Hidden nodes

Output vector

Input vector xi

wij

i

jiijj OwI

jIje

O 11

))(1( jjjjj OTOOErr

jkk

kjjj wErrOOErr )1(

ijijij OErrlww )(jjj Errl)(

SAD Tagus 200405 H Galhardas

Ex Inicializaccedilatildeo da redeEx Inicializaccedilatildeo da redeNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

Inicializar todos os valores da redeInicializar todos os valores da rede Inicializar valores de w

Valor aleatoacuterio entre -05 e 05 ou entre -10 e 10 Inicializar valores de θ (bias) dos noacutes

Valor aleatoacuterio entre -05 e 05

=02

=-02

=-03=-03

=04

=01

=-05

=02

θθ =-04

θθ =02

θθ =01

SAD Tagus 200405 H Galhardas

Ex Input Forward Ex Input Forward (Propagaccedilatildeo das (Propagaccedilatildeo das entradas)entradas)Noacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

Passo 1Passo 1 Propagar o valor de input na rede Propagar o valor de input na rede

I4 = 1x02 + 0x04 + 1x(-05) ndash 04 = -07 Mesmo para I5

=02

=-02

=-03=-03

=04

=01

=-05

=02

θθ =-04

θθ =02

θθ =01

1

01

0

1

-07

SAD Tagus 200405 H Galhardas

Ex Input ForwardEx Input Forward (caacutelculo dos Outputs) (caacutelculo dos Outputs)Noacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

=02

=-02

=-03=-03

=04

=01

=-05

=02

θθ =-04

θθ =02

θθ =01

1

0550

1Passo 2Passo 2 Calcular o valor de Output Calcular o valor de Output

O4 = 1 (1 + e07) = 033 Mesmo para O5

Repetir passos 1 e 2 para Noacute 6Repetir passos 1 e 2 para Noacute 6

033

052

SAD Tagus 200405 H Galhardas

Ex Backpropagate ErrorEx Backpropagate ErrorNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

=02

=-02

=-03=-03

=04

=01

=-05

=02

θθ =-04

θθ =02

θθ =01

1

055

052

0

1

033

Passo 3Passo 3 Calcular o valor do erro no Output layer Calcular o valor do erro no Output layer

Sendo Tj o valor de Output real nesta amostra Oreal6=1 Err6 = (055)(1 ndash 055)(1 ndash 055) = 01311

Err6 = 01311

SAD Tagus 200405 H Galhardas

Ex Backpropagate ErrorEx Backpropagate ErrorNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

=02

=-02

=-03=-03

=04

=01

=-05

=02

θθ =-04

θθ =02

θθ =01

1

055

052

0

1

033

Err6 = 01311

Passo 4Passo 4 Calcular o valor do erro na Hidden layer Calcular o valor do erro na Hidden layer

Natildeo podemos usar o valor real pois os valores do hidden layer satildeo desconhecidos

Err4 = (033)(1 ndash 033)(01311)(-03) = -00087 Mesmo para Err5

Err5 = -00065

Err4 = -0087

SAD Tagus 200405 H Galhardas

Ex Actualizar valores de WEx Actualizar valores de WNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

θθ =-04

θθ =02

θθ =01

1

055

052

0

1

033

Passo 5Passo 5 Recalcular os valores de w Recalcular os valores de w

ℓ - constante de learning rate com valor entre 0 e 1 (neste exemplo ℓ=09) Δw46 = (09)(01311)(033) = 0039 W46 = w46 + Δw46 = -03 + 0039 = -0261 Mesmo para os restantes valores de w

=0180

=-0032

=-0267

=04

=01

=-052

=0233

=-0153

Err6 = 01311

Err5 = -00065

Err4 = -0087

SAD Tagus 200405 H Galhardas

Ex Actualizar valores de Ex Actualizar valores de θθNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

1

055

052

0

1

033

Passo 5Passo 5 Recalcular os valores de Recalcular os valores de θθ e

Δθ5 = (09)(-0065) = -00585 θ5 = θ5 + Δθ5 = 02 - 00585 = 0194

Mesmo para os restantes valores de θ

θθ =0194

θθ =-0408

θθ =0218

=0192

=-0138

=-0306

=04

=01

=-0508

=0194

=-0261

SAD Tagus 200405 H Galhardas

Ex Caso ParagemEx Caso Paragem

Realizar todos os passos com uma nova amostra de treino ateacute quehellipRealizar todos os passos com uma nova amostra de treino ateacute quehellip

((casos de paragemcasos de paragem)) Todos os Todos os ΔΔw satildeo inferiores a um valor preacute-determinadow satildeo inferiores a um valor preacute-determinado A percentagem de amostras mal classificadas na ultima iteraccedilatildeo eacute abaixo A percentagem de amostras mal classificadas na ultima iteraccedilatildeo eacute abaixo

de determinado valorde determinado valor Foi atingido um nuacutemero maacuteximo de iteraccedilotildeesFoi atingido um nuacutemero maacuteximo de iteraccedilotildees

Uma iteraccedilatildeo eacute o treino da rede com todas as amostras existentes uma vez

Noacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

1

055

052

0

1

033

θθ =0194

θθ =-0408

θθ =0218

=0192

=-0138

=-0306

=04

=01

=-0508

=0194

=-0261

SAD Tagus 200405 H Galhardas

FinalmentehellipFinalmentehellip Uma vez terminado o treino da RedehellipUma vez terminado o treino da Redehellip

Esta deve ser validada atraveacutes de um conjunto de dados de teste

Uma vez validada a rede pode ser utilizada para obter valores desconhecidos

SAD Tagus 200405 H Galhardas

BibliografiaBibliografia Data Mining Concepts and TechniquesData Mining Concepts and Techniques J J

Han amp M Kamber Morgan Kaufmann 2001 Han amp M Kamber Morgan Kaufmann 2001 (Cap 7)(Cap 7)

Machine Learning Tom Mitchell McGraw Machine Learning Tom Mitchell McGraw 1997 (Cap 4)1997 (Cap 4)

Trabalho de Investigaccedilatildeo de SAD0304 de Trabalho de Investigaccedilatildeo de SAD0304 de Pedro Canteiro sobre Redes NeuronaisPedro Canteiro sobre Redes Neuronais

Princiacutepios Essenciais do Data Mining Seacutergio Princiacutepios Essenciais do Data Mining Seacutergio Navega Navega httphttpwwwintelliwisecomwwwintelliwisecomsnavegasnavega

  • Slide 1
  • Biological Neural Networks
  • Um neuroacutenio
  • Slide 4
  • Um Perceptratildeo
  • Redes Neuronais - Composiccedilatildeo
  • Redes Neuronais - Tipos
  • Appropriate Problem Domains for Neural Network Learning
  • Redes Neuronais - Vantagens
  • Redes Neuronais - Desvantagens
  • Aplicaccedilatildeo de Redes Neuronais em DM
  • Slide 12
  • Passos para efectuar DM em Redes Neuronais
  • Transformaccedilatildeo de dados
  • Transformaccedilatildeo de Dados
  • Criaccedilatildeo da Rede Neuronal
  • Treino da Rede
  • Treino de Rede Neuronal - Exemplo
  • Algoritmo de Backpropagation
  • Multi-Layer neural network
  • Ex Inicializaccedilatildeo da rede
  • Ex Input Forward (Propagaccedilatildeo das entradas)
  • Ex Input Forward (caacutelculo dos Outputs)
  • Ex Backpropagate Error
  • Ex Backpropagate Error
  • Ex Actualizar valores de W
  • Ex Actualizar valores de θ
  • Ex Caso Paragem
  • Finalmentehellip
  • Bibliografia
Page 10: Redes Neuronais

SAD Tagus 200405 H Galhardas

Redes Neuronais - Redes Neuronais - DesvantagensDesvantagens

Dificuldade em efectuar treino da rede numa BD de grande dimensatildeo (tempos de treino muito grandes)

Trabalha apenas com dados nuacutemericos (necessaacuterio transformaccedilatildeo dos dados)

Natildeo existe conhecimento sobre o tratamento dos dados no interior da rede (Caixa Preta) =gt dificil de interpretar

SAD Tagus 200405 H Galhardas

Aplicaccedilatildeo de Redes Neuronais Aplicaccedilatildeo de Redes Neuronais em DMem DM

Ex1 Determinar o risco de ter CancroEx1 Determinar o risco de ter CancroMF

Idade

Altura

Peso

Fuma

Bebe

Risco de Cancro

SAD Tagus 200405 H Galhardas

Aplicaccedilatildeo de Redes Neuronais Aplicaccedilatildeo de Redes Neuronais em DMem DM

Ex2 Determinar se dado cliente possui creacuteditoEx2 Determinar se dado cliente possui creacuteditoIdade

de natildeo ter creacutedito

Reg PagamentosDeacutebitoRenda

de ter creacutedito

SAD Tagus 200405 H Galhardas

Passos para efectuar DM em Passos para efectuar DM em Redes NeuronaisRedes Neuronais

1 - Transformaccedilatildeo de dados2 - Criaccedilatildeo da Rede3 - Treino da rede4 - Uso da rede obtenccedilatildeo de resultados

BD

Transformaccedilatildeo de dados

Resultados

SAD Tagus 200405 H Galhardas

Transformaccedilatildeo de dadosTransformaccedilatildeo de dados Para a utilizaccedilatildeo de DM em Redes Neuronais eacute Para a utilizaccedilatildeo de DM em Redes Neuronais eacute

necessaacuterio converter todos os campos da BD necessaacuterio converter todos os campos da BD para para valores nuacutemericos entre 0 e 1valores nuacutemericos entre 0 e 1

ExemploExemplo

SAD Tagus 200405 H Galhardas

Transformaccedilatildeo de DadosTransformaccedilatildeo de Dados Exemplo 2 Dada a seguinte tabelahellipExemplo 2 Dada a seguinte tabelahellip

Name Hair Height Weight Lotion ResultSarah Blonde Average Light No SunburnedDana Blonde Tall Average Yes Not sunburned

Alex Brown Short Average Yes Not sunburned

Hair

Blonde 100

Brown 010

Red 001

Height

Short 100

Average 010

Tall 001

WeightLight 100

Average 010

Heavy 001

Lotion No 10

Yes 01

ClassSunburned 10

Not sunburned

01

Como converter os dados de modo a Como converter os dados de modo a permitir o uso de Rede Neuronal para permitir o uso de Rede Neuronal para inferir se determinada pessoa tem o inferir se determinada pessoa tem o cabelo enfraquecido pelo solcabelo enfraquecido pelo sol

SAD Tagus 200405 H Galhardas

Criaccedilatildeo da Rede NeuronalCriaccedilatildeo da Rede Neuronal Vamos criar uma rede 2-layerVamos criar uma rede 2-layer Input layerInput layer

Hair ndash precisamos de 3 inputs Height Weight ndash 3 inputs Lotion ndash 2 inputs

Output layerOutput layer Sunburned ndash 2 Outputs

Hidden layerHidden layer Qualquer valor eacute aceitaacutevel

5 noacutes

Ficamos com uma rede 11x5x2Ficamos com uma rede 11x5x2

HairBlonde 100

Brown 010

Red 001

HeightShort 100

Average 010

Tall 001

WeightLight 100

Average 010

Heavy 001

Lotion No 10

Yes 01

ClassSunburned 10

Not sunburned

01

Hair

Height

Weight

Lotion

Sunburnedhellip hellip

SAD Tagus 200405 H Galhardas

Treino da RedeTreino da Rede Usa-se um conjunto de amostras cujo Usa-se um conjunto de amostras cujo

valor da funccedilatildeo alvo (ou objectivo) eacute valor da funccedilatildeo alvo (ou objectivo) eacute conhecido - conhecido - amostras de treinoamostras de treino

Ex a linha da tabela relativa a Sarah pode ser usada como amostra de treino

Sarah Blonde Average Light No Sunburned

SAD Tagus 200405 H Galhardas

Treino de Rede Neuronal - Treino de Rede Neuronal - ExemploExemplo

Rede NeuronalRede Neuronal 2-layer

Apenas 1 hidden layer feed forward

Sem ciclos 3 noacutes de Input 1 noacute de Output

Utilizaccedilatildeo do algoritmo de Utilizaccedilatildeo do algoritmo de backpropagationbackpropagation o mais comum para o treino de redes neuronais

SAD Tagus 200405 H Galhardas

Algoritmo de Algoritmo de BackpropagationBackpropagation

AA BB CC XX

11 00 11 11 Dada a amostra de Dada a amostra de

treinohelliptreinohellip

Calcular o Calcular o erroerro em em cada noacutecada noacute

Alterar o Alterar o pesopeso dos dos arcosarcos

Alterar o Alterar o biasbias dos noacutes dos noacutes

O55

Treinar a nova rede com outra amostra de Treinar a nova rede com outra amostra de treinotreino

θθ

θθ

θθ0

1

1

ne

SAD Tagus 200405 H Galhardas

Multi-Layer neural Multi-Layer neural networknetwork

Output nodes

Input nodes

Hidden nodes

Output vector

Input vector xi

wij

i

jiijj OwI

jIje

O 11

))(1( jjjjj OTOOErr

jkk

kjjj wErrOOErr )1(

ijijij OErrlww )(jjj Errl)(

SAD Tagus 200405 H Galhardas

Ex Inicializaccedilatildeo da redeEx Inicializaccedilatildeo da redeNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

Inicializar todos os valores da redeInicializar todos os valores da rede Inicializar valores de w

Valor aleatoacuterio entre -05 e 05 ou entre -10 e 10 Inicializar valores de θ (bias) dos noacutes

Valor aleatoacuterio entre -05 e 05

=02

=-02

=-03=-03

=04

=01

=-05

=02

θθ =-04

θθ =02

θθ =01

SAD Tagus 200405 H Galhardas

Ex Input Forward Ex Input Forward (Propagaccedilatildeo das (Propagaccedilatildeo das entradas)entradas)Noacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

Passo 1Passo 1 Propagar o valor de input na rede Propagar o valor de input na rede

I4 = 1x02 + 0x04 + 1x(-05) ndash 04 = -07 Mesmo para I5

=02

=-02

=-03=-03

=04

=01

=-05

=02

θθ =-04

θθ =02

θθ =01

1

01

0

1

-07

SAD Tagus 200405 H Galhardas

Ex Input ForwardEx Input Forward (caacutelculo dos Outputs) (caacutelculo dos Outputs)Noacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

=02

=-02

=-03=-03

=04

=01

=-05

=02

θθ =-04

θθ =02

θθ =01

1

0550

1Passo 2Passo 2 Calcular o valor de Output Calcular o valor de Output

O4 = 1 (1 + e07) = 033 Mesmo para O5

Repetir passos 1 e 2 para Noacute 6Repetir passos 1 e 2 para Noacute 6

033

052

SAD Tagus 200405 H Galhardas

Ex Backpropagate ErrorEx Backpropagate ErrorNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

=02

=-02

=-03=-03

=04

=01

=-05

=02

θθ =-04

θθ =02

θθ =01

1

055

052

0

1

033

Passo 3Passo 3 Calcular o valor do erro no Output layer Calcular o valor do erro no Output layer

Sendo Tj o valor de Output real nesta amostra Oreal6=1 Err6 = (055)(1 ndash 055)(1 ndash 055) = 01311

Err6 = 01311

SAD Tagus 200405 H Galhardas

Ex Backpropagate ErrorEx Backpropagate ErrorNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

=02

=-02

=-03=-03

=04

=01

=-05

=02

θθ =-04

θθ =02

θθ =01

1

055

052

0

1

033

Err6 = 01311

Passo 4Passo 4 Calcular o valor do erro na Hidden layer Calcular o valor do erro na Hidden layer

Natildeo podemos usar o valor real pois os valores do hidden layer satildeo desconhecidos

Err4 = (033)(1 ndash 033)(01311)(-03) = -00087 Mesmo para Err5

Err5 = -00065

Err4 = -0087

SAD Tagus 200405 H Galhardas

Ex Actualizar valores de WEx Actualizar valores de WNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

θθ =-04

θθ =02

θθ =01

1

055

052

0

1

033

Passo 5Passo 5 Recalcular os valores de w Recalcular os valores de w

ℓ - constante de learning rate com valor entre 0 e 1 (neste exemplo ℓ=09) Δw46 = (09)(01311)(033) = 0039 W46 = w46 + Δw46 = -03 + 0039 = -0261 Mesmo para os restantes valores de w

=0180

=-0032

=-0267

=04

=01

=-052

=0233

=-0153

Err6 = 01311

Err5 = -00065

Err4 = -0087

SAD Tagus 200405 H Galhardas

Ex Actualizar valores de Ex Actualizar valores de θθNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

1

055

052

0

1

033

Passo 5Passo 5 Recalcular os valores de Recalcular os valores de θθ e

Δθ5 = (09)(-0065) = -00585 θ5 = θ5 + Δθ5 = 02 - 00585 = 0194

Mesmo para os restantes valores de θ

θθ =0194

θθ =-0408

θθ =0218

=0192

=-0138

=-0306

=04

=01

=-0508

=0194

=-0261

SAD Tagus 200405 H Galhardas

Ex Caso ParagemEx Caso Paragem

Realizar todos os passos com uma nova amostra de treino ateacute quehellipRealizar todos os passos com uma nova amostra de treino ateacute quehellip

((casos de paragemcasos de paragem)) Todos os Todos os ΔΔw satildeo inferiores a um valor preacute-determinadow satildeo inferiores a um valor preacute-determinado A percentagem de amostras mal classificadas na ultima iteraccedilatildeo eacute abaixo A percentagem de amostras mal classificadas na ultima iteraccedilatildeo eacute abaixo

de determinado valorde determinado valor Foi atingido um nuacutemero maacuteximo de iteraccedilotildeesFoi atingido um nuacutemero maacuteximo de iteraccedilotildees

Uma iteraccedilatildeo eacute o treino da rede com todas as amostras existentes uma vez

Noacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

1

055

052

0

1

033

θθ =0194

θθ =-0408

θθ =0218

=0192

=-0138

=-0306

=04

=01

=-0508

=0194

=-0261

SAD Tagus 200405 H Galhardas

FinalmentehellipFinalmentehellip Uma vez terminado o treino da RedehellipUma vez terminado o treino da Redehellip

Esta deve ser validada atraveacutes de um conjunto de dados de teste

Uma vez validada a rede pode ser utilizada para obter valores desconhecidos

SAD Tagus 200405 H Galhardas

BibliografiaBibliografia Data Mining Concepts and TechniquesData Mining Concepts and Techniques J J

Han amp M Kamber Morgan Kaufmann 2001 Han amp M Kamber Morgan Kaufmann 2001 (Cap 7)(Cap 7)

Machine Learning Tom Mitchell McGraw Machine Learning Tom Mitchell McGraw 1997 (Cap 4)1997 (Cap 4)

Trabalho de Investigaccedilatildeo de SAD0304 de Trabalho de Investigaccedilatildeo de SAD0304 de Pedro Canteiro sobre Redes NeuronaisPedro Canteiro sobre Redes Neuronais

Princiacutepios Essenciais do Data Mining Seacutergio Princiacutepios Essenciais do Data Mining Seacutergio Navega Navega httphttpwwwintelliwisecomwwwintelliwisecomsnavegasnavega

  • Slide 1
  • Biological Neural Networks
  • Um neuroacutenio
  • Slide 4
  • Um Perceptratildeo
  • Redes Neuronais - Composiccedilatildeo
  • Redes Neuronais - Tipos
  • Appropriate Problem Domains for Neural Network Learning
  • Redes Neuronais - Vantagens
  • Redes Neuronais - Desvantagens
  • Aplicaccedilatildeo de Redes Neuronais em DM
  • Slide 12
  • Passos para efectuar DM em Redes Neuronais
  • Transformaccedilatildeo de dados
  • Transformaccedilatildeo de Dados
  • Criaccedilatildeo da Rede Neuronal
  • Treino da Rede
  • Treino de Rede Neuronal - Exemplo
  • Algoritmo de Backpropagation
  • Multi-Layer neural network
  • Ex Inicializaccedilatildeo da rede
  • Ex Input Forward (Propagaccedilatildeo das entradas)
  • Ex Input Forward (caacutelculo dos Outputs)
  • Ex Backpropagate Error
  • Ex Backpropagate Error
  • Ex Actualizar valores de W
  • Ex Actualizar valores de θ
  • Ex Caso Paragem
  • Finalmentehellip
  • Bibliografia
Page 11: Redes Neuronais

SAD Tagus 200405 H Galhardas

Aplicaccedilatildeo de Redes Neuronais Aplicaccedilatildeo de Redes Neuronais em DMem DM

Ex1 Determinar o risco de ter CancroEx1 Determinar o risco de ter CancroMF

Idade

Altura

Peso

Fuma

Bebe

Risco de Cancro

SAD Tagus 200405 H Galhardas

Aplicaccedilatildeo de Redes Neuronais Aplicaccedilatildeo de Redes Neuronais em DMem DM

Ex2 Determinar se dado cliente possui creacuteditoEx2 Determinar se dado cliente possui creacuteditoIdade

de natildeo ter creacutedito

Reg PagamentosDeacutebitoRenda

de ter creacutedito

SAD Tagus 200405 H Galhardas

Passos para efectuar DM em Passos para efectuar DM em Redes NeuronaisRedes Neuronais

1 - Transformaccedilatildeo de dados2 - Criaccedilatildeo da Rede3 - Treino da rede4 - Uso da rede obtenccedilatildeo de resultados

BD

Transformaccedilatildeo de dados

Resultados

SAD Tagus 200405 H Galhardas

Transformaccedilatildeo de dadosTransformaccedilatildeo de dados Para a utilizaccedilatildeo de DM em Redes Neuronais eacute Para a utilizaccedilatildeo de DM em Redes Neuronais eacute

necessaacuterio converter todos os campos da BD necessaacuterio converter todos os campos da BD para para valores nuacutemericos entre 0 e 1valores nuacutemericos entre 0 e 1

ExemploExemplo

SAD Tagus 200405 H Galhardas

Transformaccedilatildeo de DadosTransformaccedilatildeo de Dados Exemplo 2 Dada a seguinte tabelahellipExemplo 2 Dada a seguinte tabelahellip

Name Hair Height Weight Lotion ResultSarah Blonde Average Light No SunburnedDana Blonde Tall Average Yes Not sunburned

Alex Brown Short Average Yes Not sunburned

Hair

Blonde 100

Brown 010

Red 001

Height

Short 100

Average 010

Tall 001

WeightLight 100

Average 010

Heavy 001

Lotion No 10

Yes 01

ClassSunburned 10

Not sunburned

01

Como converter os dados de modo a Como converter os dados de modo a permitir o uso de Rede Neuronal para permitir o uso de Rede Neuronal para inferir se determinada pessoa tem o inferir se determinada pessoa tem o cabelo enfraquecido pelo solcabelo enfraquecido pelo sol

SAD Tagus 200405 H Galhardas

Criaccedilatildeo da Rede NeuronalCriaccedilatildeo da Rede Neuronal Vamos criar uma rede 2-layerVamos criar uma rede 2-layer Input layerInput layer

Hair ndash precisamos de 3 inputs Height Weight ndash 3 inputs Lotion ndash 2 inputs

Output layerOutput layer Sunburned ndash 2 Outputs

Hidden layerHidden layer Qualquer valor eacute aceitaacutevel

5 noacutes

Ficamos com uma rede 11x5x2Ficamos com uma rede 11x5x2

HairBlonde 100

Brown 010

Red 001

HeightShort 100

Average 010

Tall 001

WeightLight 100

Average 010

Heavy 001

Lotion No 10

Yes 01

ClassSunburned 10

Not sunburned

01

Hair

Height

Weight

Lotion

Sunburnedhellip hellip

SAD Tagus 200405 H Galhardas

Treino da RedeTreino da Rede Usa-se um conjunto de amostras cujo Usa-se um conjunto de amostras cujo

valor da funccedilatildeo alvo (ou objectivo) eacute valor da funccedilatildeo alvo (ou objectivo) eacute conhecido - conhecido - amostras de treinoamostras de treino

Ex a linha da tabela relativa a Sarah pode ser usada como amostra de treino

Sarah Blonde Average Light No Sunburned

SAD Tagus 200405 H Galhardas

Treino de Rede Neuronal - Treino de Rede Neuronal - ExemploExemplo

Rede NeuronalRede Neuronal 2-layer

Apenas 1 hidden layer feed forward

Sem ciclos 3 noacutes de Input 1 noacute de Output

Utilizaccedilatildeo do algoritmo de Utilizaccedilatildeo do algoritmo de backpropagationbackpropagation o mais comum para o treino de redes neuronais

SAD Tagus 200405 H Galhardas

Algoritmo de Algoritmo de BackpropagationBackpropagation

AA BB CC XX

11 00 11 11 Dada a amostra de Dada a amostra de

treinohelliptreinohellip

Calcular o Calcular o erroerro em em cada noacutecada noacute

Alterar o Alterar o pesopeso dos dos arcosarcos

Alterar o Alterar o biasbias dos noacutes dos noacutes

O55

Treinar a nova rede com outra amostra de Treinar a nova rede com outra amostra de treinotreino

θθ

θθ

θθ0

1

1

ne

SAD Tagus 200405 H Galhardas

Multi-Layer neural Multi-Layer neural networknetwork

Output nodes

Input nodes

Hidden nodes

Output vector

Input vector xi

wij

i

jiijj OwI

jIje

O 11

))(1( jjjjj OTOOErr

jkk

kjjj wErrOOErr )1(

ijijij OErrlww )(jjj Errl)(

SAD Tagus 200405 H Galhardas

Ex Inicializaccedilatildeo da redeEx Inicializaccedilatildeo da redeNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

Inicializar todos os valores da redeInicializar todos os valores da rede Inicializar valores de w

Valor aleatoacuterio entre -05 e 05 ou entre -10 e 10 Inicializar valores de θ (bias) dos noacutes

Valor aleatoacuterio entre -05 e 05

=02

=-02

=-03=-03

=04

=01

=-05

=02

θθ =-04

θθ =02

θθ =01

SAD Tagus 200405 H Galhardas

Ex Input Forward Ex Input Forward (Propagaccedilatildeo das (Propagaccedilatildeo das entradas)entradas)Noacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

Passo 1Passo 1 Propagar o valor de input na rede Propagar o valor de input na rede

I4 = 1x02 + 0x04 + 1x(-05) ndash 04 = -07 Mesmo para I5

=02

=-02

=-03=-03

=04

=01

=-05

=02

θθ =-04

θθ =02

θθ =01

1

01

0

1

-07

SAD Tagus 200405 H Galhardas

Ex Input ForwardEx Input Forward (caacutelculo dos Outputs) (caacutelculo dos Outputs)Noacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

=02

=-02

=-03=-03

=04

=01

=-05

=02

θθ =-04

θθ =02

θθ =01

1

0550

1Passo 2Passo 2 Calcular o valor de Output Calcular o valor de Output

O4 = 1 (1 + e07) = 033 Mesmo para O5

Repetir passos 1 e 2 para Noacute 6Repetir passos 1 e 2 para Noacute 6

033

052

SAD Tagus 200405 H Galhardas

Ex Backpropagate ErrorEx Backpropagate ErrorNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

=02

=-02

=-03=-03

=04

=01

=-05

=02

θθ =-04

θθ =02

θθ =01

1

055

052

0

1

033

Passo 3Passo 3 Calcular o valor do erro no Output layer Calcular o valor do erro no Output layer

Sendo Tj o valor de Output real nesta amostra Oreal6=1 Err6 = (055)(1 ndash 055)(1 ndash 055) = 01311

Err6 = 01311

SAD Tagus 200405 H Galhardas

Ex Backpropagate ErrorEx Backpropagate ErrorNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

=02

=-02

=-03=-03

=04

=01

=-05

=02

θθ =-04

θθ =02

θθ =01

1

055

052

0

1

033

Err6 = 01311

Passo 4Passo 4 Calcular o valor do erro na Hidden layer Calcular o valor do erro na Hidden layer

Natildeo podemos usar o valor real pois os valores do hidden layer satildeo desconhecidos

Err4 = (033)(1 ndash 033)(01311)(-03) = -00087 Mesmo para Err5

Err5 = -00065

Err4 = -0087

SAD Tagus 200405 H Galhardas

Ex Actualizar valores de WEx Actualizar valores de WNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

θθ =-04

θθ =02

θθ =01

1

055

052

0

1

033

Passo 5Passo 5 Recalcular os valores de w Recalcular os valores de w

ℓ - constante de learning rate com valor entre 0 e 1 (neste exemplo ℓ=09) Δw46 = (09)(01311)(033) = 0039 W46 = w46 + Δw46 = -03 + 0039 = -0261 Mesmo para os restantes valores de w

=0180

=-0032

=-0267

=04

=01

=-052

=0233

=-0153

Err6 = 01311

Err5 = -00065

Err4 = -0087

SAD Tagus 200405 H Galhardas

Ex Actualizar valores de Ex Actualizar valores de θθNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

1

055

052

0

1

033

Passo 5Passo 5 Recalcular os valores de Recalcular os valores de θθ e

Δθ5 = (09)(-0065) = -00585 θ5 = θ5 + Δθ5 = 02 - 00585 = 0194

Mesmo para os restantes valores de θ

θθ =0194

θθ =-0408

θθ =0218

=0192

=-0138

=-0306

=04

=01

=-0508

=0194

=-0261

SAD Tagus 200405 H Galhardas

Ex Caso ParagemEx Caso Paragem

Realizar todos os passos com uma nova amostra de treino ateacute quehellipRealizar todos os passos com uma nova amostra de treino ateacute quehellip

((casos de paragemcasos de paragem)) Todos os Todos os ΔΔw satildeo inferiores a um valor preacute-determinadow satildeo inferiores a um valor preacute-determinado A percentagem de amostras mal classificadas na ultima iteraccedilatildeo eacute abaixo A percentagem de amostras mal classificadas na ultima iteraccedilatildeo eacute abaixo

de determinado valorde determinado valor Foi atingido um nuacutemero maacuteximo de iteraccedilotildeesFoi atingido um nuacutemero maacuteximo de iteraccedilotildees

Uma iteraccedilatildeo eacute o treino da rede com todas as amostras existentes uma vez

Noacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

1

055

052

0

1

033

θθ =0194

θθ =-0408

θθ =0218

=0192

=-0138

=-0306

=04

=01

=-0508

=0194

=-0261

SAD Tagus 200405 H Galhardas

FinalmentehellipFinalmentehellip Uma vez terminado o treino da RedehellipUma vez terminado o treino da Redehellip

Esta deve ser validada atraveacutes de um conjunto de dados de teste

Uma vez validada a rede pode ser utilizada para obter valores desconhecidos

SAD Tagus 200405 H Galhardas

BibliografiaBibliografia Data Mining Concepts and TechniquesData Mining Concepts and Techniques J J

Han amp M Kamber Morgan Kaufmann 2001 Han amp M Kamber Morgan Kaufmann 2001 (Cap 7)(Cap 7)

Machine Learning Tom Mitchell McGraw Machine Learning Tom Mitchell McGraw 1997 (Cap 4)1997 (Cap 4)

Trabalho de Investigaccedilatildeo de SAD0304 de Trabalho de Investigaccedilatildeo de SAD0304 de Pedro Canteiro sobre Redes NeuronaisPedro Canteiro sobre Redes Neuronais

Princiacutepios Essenciais do Data Mining Seacutergio Princiacutepios Essenciais do Data Mining Seacutergio Navega Navega httphttpwwwintelliwisecomwwwintelliwisecomsnavegasnavega

  • Slide 1
  • Biological Neural Networks
  • Um neuroacutenio
  • Slide 4
  • Um Perceptratildeo
  • Redes Neuronais - Composiccedilatildeo
  • Redes Neuronais - Tipos
  • Appropriate Problem Domains for Neural Network Learning
  • Redes Neuronais - Vantagens
  • Redes Neuronais - Desvantagens
  • Aplicaccedilatildeo de Redes Neuronais em DM
  • Slide 12
  • Passos para efectuar DM em Redes Neuronais
  • Transformaccedilatildeo de dados
  • Transformaccedilatildeo de Dados
  • Criaccedilatildeo da Rede Neuronal
  • Treino da Rede
  • Treino de Rede Neuronal - Exemplo
  • Algoritmo de Backpropagation
  • Multi-Layer neural network
  • Ex Inicializaccedilatildeo da rede
  • Ex Input Forward (Propagaccedilatildeo das entradas)
  • Ex Input Forward (caacutelculo dos Outputs)
  • Ex Backpropagate Error
  • Ex Backpropagate Error
  • Ex Actualizar valores de W
  • Ex Actualizar valores de θ
  • Ex Caso Paragem
  • Finalmentehellip
  • Bibliografia
Page 12: Redes Neuronais

SAD Tagus 200405 H Galhardas

Aplicaccedilatildeo de Redes Neuronais Aplicaccedilatildeo de Redes Neuronais em DMem DM

Ex2 Determinar se dado cliente possui creacuteditoEx2 Determinar se dado cliente possui creacuteditoIdade

de natildeo ter creacutedito

Reg PagamentosDeacutebitoRenda

de ter creacutedito

SAD Tagus 200405 H Galhardas

Passos para efectuar DM em Passos para efectuar DM em Redes NeuronaisRedes Neuronais

1 - Transformaccedilatildeo de dados2 - Criaccedilatildeo da Rede3 - Treino da rede4 - Uso da rede obtenccedilatildeo de resultados

BD

Transformaccedilatildeo de dados

Resultados

SAD Tagus 200405 H Galhardas

Transformaccedilatildeo de dadosTransformaccedilatildeo de dados Para a utilizaccedilatildeo de DM em Redes Neuronais eacute Para a utilizaccedilatildeo de DM em Redes Neuronais eacute

necessaacuterio converter todos os campos da BD necessaacuterio converter todos os campos da BD para para valores nuacutemericos entre 0 e 1valores nuacutemericos entre 0 e 1

ExemploExemplo

SAD Tagus 200405 H Galhardas

Transformaccedilatildeo de DadosTransformaccedilatildeo de Dados Exemplo 2 Dada a seguinte tabelahellipExemplo 2 Dada a seguinte tabelahellip

Name Hair Height Weight Lotion ResultSarah Blonde Average Light No SunburnedDana Blonde Tall Average Yes Not sunburned

Alex Brown Short Average Yes Not sunburned

Hair

Blonde 100

Brown 010

Red 001

Height

Short 100

Average 010

Tall 001

WeightLight 100

Average 010

Heavy 001

Lotion No 10

Yes 01

ClassSunburned 10

Not sunburned

01

Como converter os dados de modo a Como converter os dados de modo a permitir o uso de Rede Neuronal para permitir o uso de Rede Neuronal para inferir se determinada pessoa tem o inferir se determinada pessoa tem o cabelo enfraquecido pelo solcabelo enfraquecido pelo sol

SAD Tagus 200405 H Galhardas

Criaccedilatildeo da Rede NeuronalCriaccedilatildeo da Rede Neuronal Vamos criar uma rede 2-layerVamos criar uma rede 2-layer Input layerInput layer

Hair ndash precisamos de 3 inputs Height Weight ndash 3 inputs Lotion ndash 2 inputs

Output layerOutput layer Sunburned ndash 2 Outputs

Hidden layerHidden layer Qualquer valor eacute aceitaacutevel

5 noacutes

Ficamos com uma rede 11x5x2Ficamos com uma rede 11x5x2

HairBlonde 100

Brown 010

Red 001

HeightShort 100

Average 010

Tall 001

WeightLight 100

Average 010

Heavy 001

Lotion No 10

Yes 01

ClassSunburned 10

Not sunburned

01

Hair

Height

Weight

Lotion

Sunburnedhellip hellip

SAD Tagus 200405 H Galhardas

Treino da RedeTreino da Rede Usa-se um conjunto de amostras cujo Usa-se um conjunto de amostras cujo

valor da funccedilatildeo alvo (ou objectivo) eacute valor da funccedilatildeo alvo (ou objectivo) eacute conhecido - conhecido - amostras de treinoamostras de treino

Ex a linha da tabela relativa a Sarah pode ser usada como amostra de treino

Sarah Blonde Average Light No Sunburned

SAD Tagus 200405 H Galhardas

Treino de Rede Neuronal - Treino de Rede Neuronal - ExemploExemplo

Rede NeuronalRede Neuronal 2-layer

Apenas 1 hidden layer feed forward

Sem ciclos 3 noacutes de Input 1 noacute de Output

Utilizaccedilatildeo do algoritmo de Utilizaccedilatildeo do algoritmo de backpropagationbackpropagation o mais comum para o treino de redes neuronais

SAD Tagus 200405 H Galhardas

Algoritmo de Algoritmo de BackpropagationBackpropagation

AA BB CC XX

11 00 11 11 Dada a amostra de Dada a amostra de

treinohelliptreinohellip

Calcular o Calcular o erroerro em em cada noacutecada noacute

Alterar o Alterar o pesopeso dos dos arcosarcos

Alterar o Alterar o biasbias dos noacutes dos noacutes

O55

Treinar a nova rede com outra amostra de Treinar a nova rede com outra amostra de treinotreino

θθ

θθ

θθ0

1

1

ne

SAD Tagus 200405 H Galhardas

Multi-Layer neural Multi-Layer neural networknetwork

Output nodes

Input nodes

Hidden nodes

Output vector

Input vector xi

wij

i

jiijj OwI

jIje

O 11

))(1( jjjjj OTOOErr

jkk

kjjj wErrOOErr )1(

ijijij OErrlww )(jjj Errl)(

SAD Tagus 200405 H Galhardas

Ex Inicializaccedilatildeo da redeEx Inicializaccedilatildeo da redeNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

Inicializar todos os valores da redeInicializar todos os valores da rede Inicializar valores de w

Valor aleatoacuterio entre -05 e 05 ou entre -10 e 10 Inicializar valores de θ (bias) dos noacutes

Valor aleatoacuterio entre -05 e 05

=02

=-02

=-03=-03

=04

=01

=-05

=02

θθ =-04

θθ =02

θθ =01

SAD Tagus 200405 H Galhardas

Ex Input Forward Ex Input Forward (Propagaccedilatildeo das (Propagaccedilatildeo das entradas)entradas)Noacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

Passo 1Passo 1 Propagar o valor de input na rede Propagar o valor de input na rede

I4 = 1x02 + 0x04 + 1x(-05) ndash 04 = -07 Mesmo para I5

=02

=-02

=-03=-03

=04

=01

=-05

=02

θθ =-04

θθ =02

θθ =01

1

01

0

1

-07

SAD Tagus 200405 H Galhardas

Ex Input ForwardEx Input Forward (caacutelculo dos Outputs) (caacutelculo dos Outputs)Noacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

=02

=-02

=-03=-03

=04

=01

=-05

=02

θθ =-04

θθ =02

θθ =01

1

0550

1Passo 2Passo 2 Calcular o valor de Output Calcular o valor de Output

O4 = 1 (1 + e07) = 033 Mesmo para O5

Repetir passos 1 e 2 para Noacute 6Repetir passos 1 e 2 para Noacute 6

033

052

SAD Tagus 200405 H Galhardas

Ex Backpropagate ErrorEx Backpropagate ErrorNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

=02

=-02

=-03=-03

=04

=01

=-05

=02

θθ =-04

θθ =02

θθ =01

1

055

052

0

1

033

Passo 3Passo 3 Calcular o valor do erro no Output layer Calcular o valor do erro no Output layer

Sendo Tj o valor de Output real nesta amostra Oreal6=1 Err6 = (055)(1 ndash 055)(1 ndash 055) = 01311

Err6 = 01311

SAD Tagus 200405 H Galhardas

Ex Backpropagate ErrorEx Backpropagate ErrorNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

=02

=-02

=-03=-03

=04

=01

=-05

=02

θθ =-04

θθ =02

θθ =01

1

055

052

0

1

033

Err6 = 01311

Passo 4Passo 4 Calcular o valor do erro na Hidden layer Calcular o valor do erro na Hidden layer

Natildeo podemos usar o valor real pois os valores do hidden layer satildeo desconhecidos

Err4 = (033)(1 ndash 033)(01311)(-03) = -00087 Mesmo para Err5

Err5 = -00065

Err4 = -0087

SAD Tagus 200405 H Galhardas

Ex Actualizar valores de WEx Actualizar valores de WNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

θθ =-04

θθ =02

θθ =01

1

055

052

0

1

033

Passo 5Passo 5 Recalcular os valores de w Recalcular os valores de w

ℓ - constante de learning rate com valor entre 0 e 1 (neste exemplo ℓ=09) Δw46 = (09)(01311)(033) = 0039 W46 = w46 + Δw46 = -03 + 0039 = -0261 Mesmo para os restantes valores de w

=0180

=-0032

=-0267

=04

=01

=-052

=0233

=-0153

Err6 = 01311

Err5 = -00065

Err4 = -0087

SAD Tagus 200405 H Galhardas

Ex Actualizar valores de Ex Actualizar valores de θθNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

1

055

052

0

1

033

Passo 5Passo 5 Recalcular os valores de Recalcular os valores de θθ e

Δθ5 = (09)(-0065) = -00585 θ5 = θ5 + Δθ5 = 02 - 00585 = 0194

Mesmo para os restantes valores de θ

θθ =0194

θθ =-0408

θθ =0218

=0192

=-0138

=-0306

=04

=01

=-0508

=0194

=-0261

SAD Tagus 200405 H Galhardas

Ex Caso ParagemEx Caso Paragem

Realizar todos os passos com uma nova amostra de treino ateacute quehellipRealizar todos os passos com uma nova amostra de treino ateacute quehellip

((casos de paragemcasos de paragem)) Todos os Todos os ΔΔw satildeo inferiores a um valor preacute-determinadow satildeo inferiores a um valor preacute-determinado A percentagem de amostras mal classificadas na ultima iteraccedilatildeo eacute abaixo A percentagem de amostras mal classificadas na ultima iteraccedilatildeo eacute abaixo

de determinado valorde determinado valor Foi atingido um nuacutemero maacuteximo de iteraccedilotildeesFoi atingido um nuacutemero maacuteximo de iteraccedilotildees

Uma iteraccedilatildeo eacute o treino da rede com todas as amostras existentes uma vez

Noacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

1

055

052

0

1

033

θθ =0194

θθ =-0408

θθ =0218

=0192

=-0138

=-0306

=04

=01

=-0508

=0194

=-0261

SAD Tagus 200405 H Galhardas

FinalmentehellipFinalmentehellip Uma vez terminado o treino da RedehellipUma vez terminado o treino da Redehellip

Esta deve ser validada atraveacutes de um conjunto de dados de teste

Uma vez validada a rede pode ser utilizada para obter valores desconhecidos

SAD Tagus 200405 H Galhardas

BibliografiaBibliografia Data Mining Concepts and TechniquesData Mining Concepts and Techniques J J

Han amp M Kamber Morgan Kaufmann 2001 Han amp M Kamber Morgan Kaufmann 2001 (Cap 7)(Cap 7)

Machine Learning Tom Mitchell McGraw Machine Learning Tom Mitchell McGraw 1997 (Cap 4)1997 (Cap 4)

Trabalho de Investigaccedilatildeo de SAD0304 de Trabalho de Investigaccedilatildeo de SAD0304 de Pedro Canteiro sobre Redes NeuronaisPedro Canteiro sobre Redes Neuronais

Princiacutepios Essenciais do Data Mining Seacutergio Princiacutepios Essenciais do Data Mining Seacutergio Navega Navega httphttpwwwintelliwisecomwwwintelliwisecomsnavegasnavega

  • Slide 1
  • Biological Neural Networks
  • Um neuroacutenio
  • Slide 4
  • Um Perceptratildeo
  • Redes Neuronais - Composiccedilatildeo
  • Redes Neuronais - Tipos
  • Appropriate Problem Domains for Neural Network Learning
  • Redes Neuronais - Vantagens
  • Redes Neuronais - Desvantagens
  • Aplicaccedilatildeo de Redes Neuronais em DM
  • Slide 12
  • Passos para efectuar DM em Redes Neuronais
  • Transformaccedilatildeo de dados
  • Transformaccedilatildeo de Dados
  • Criaccedilatildeo da Rede Neuronal
  • Treino da Rede
  • Treino de Rede Neuronal - Exemplo
  • Algoritmo de Backpropagation
  • Multi-Layer neural network
  • Ex Inicializaccedilatildeo da rede
  • Ex Input Forward (Propagaccedilatildeo das entradas)
  • Ex Input Forward (caacutelculo dos Outputs)
  • Ex Backpropagate Error
  • Ex Backpropagate Error
  • Ex Actualizar valores de W
  • Ex Actualizar valores de θ
  • Ex Caso Paragem
  • Finalmentehellip
  • Bibliografia
Page 13: Redes Neuronais

SAD Tagus 200405 H Galhardas

Passos para efectuar DM em Passos para efectuar DM em Redes NeuronaisRedes Neuronais

1 - Transformaccedilatildeo de dados2 - Criaccedilatildeo da Rede3 - Treino da rede4 - Uso da rede obtenccedilatildeo de resultados

BD

Transformaccedilatildeo de dados

Resultados

SAD Tagus 200405 H Galhardas

Transformaccedilatildeo de dadosTransformaccedilatildeo de dados Para a utilizaccedilatildeo de DM em Redes Neuronais eacute Para a utilizaccedilatildeo de DM em Redes Neuronais eacute

necessaacuterio converter todos os campos da BD necessaacuterio converter todos os campos da BD para para valores nuacutemericos entre 0 e 1valores nuacutemericos entre 0 e 1

ExemploExemplo

SAD Tagus 200405 H Galhardas

Transformaccedilatildeo de DadosTransformaccedilatildeo de Dados Exemplo 2 Dada a seguinte tabelahellipExemplo 2 Dada a seguinte tabelahellip

Name Hair Height Weight Lotion ResultSarah Blonde Average Light No SunburnedDana Blonde Tall Average Yes Not sunburned

Alex Brown Short Average Yes Not sunburned

Hair

Blonde 100

Brown 010

Red 001

Height

Short 100

Average 010

Tall 001

WeightLight 100

Average 010

Heavy 001

Lotion No 10

Yes 01

ClassSunburned 10

Not sunburned

01

Como converter os dados de modo a Como converter os dados de modo a permitir o uso de Rede Neuronal para permitir o uso de Rede Neuronal para inferir se determinada pessoa tem o inferir se determinada pessoa tem o cabelo enfraquecido pelo solcabelo enfraquecido pelo sol

SAD Tagus 200405 H Galhardas

Criaccedilatildeo da Rede NeuronalCriaccedilatildeo da Rede Neuronal Vamos criar uma rede 2-layerVamos criar uma rede 2-layer Input layerInput layer

Hair ndash precisamos de 3 inputs Height Weight ndash 3 inputs Lotion ndash 2 inputs

Output layerOutput layer Sunburned ndash 2 Outputs

Hidden layerHidden layer Qualquer valor eacute aceitaacutevel

5 noacutes

Ficamos com uma rede 11x5x2Ficamos com uma rede 11x5x2

HairBlonde 100

Brown 010

Red 001

HeightShort 100

Average 010

Tall 001

WeightLight 100

Average 010

Heavy 001

Lotion No 10

Yes 01

ClassSunburned 10

Not sunburned

01

Hair

Height

Weight

Lotion

Sunburnedhellip hellip

SAD Tagus 200405 H Galhardas

Treino da RedeTreino da Rede Usa-se um conjunto de amostras cujo Usa-se um conjunto de amostras cujo

valor da funccedilatildeo alvo (ou objectivo) eacute valor da funccedilatildeo alvo (ou objectivo) eacute conhecido - conhecido - amostras de treinoamostras de treino

Ex a linha da tabela relativa a Sarah pode ser usada como amostra de treino

Sarah Blonde Average Light No Sunburned

SAD Tagus 200405 H Galhardas

Treino de Rede Neuronal - Treino de Rede Neuronal - ExemploExemplo

Rede NeuronalRede Neuronal 2-layer

Apenas 1 hidden layer feed forward

Sem ciclos 3 noacutes de Input 1 noacute de Output

Utilizaccedilatildeo do algoritmo de Utilizaccedilatildeo do algoritmo de backpropagationbackpropagation o mais comum para o treino de redes neuronais

SAD Tagus 200405 H Galhardas

Algoritmo de Algoritmo de BackpropagationBackpropagation

AA BB CC XX

11 00 11 11 Dada a amostra de Dada a amostra de

treinohelliptreinohellip

Calcular o Calcular o erroerro em em cada noacutecada noacute

Alterar o Alterar o pesopeso dos dos arcosarcos

Alterar o Alterar o biasbias dos noacutes dos noacutes

O55

Treinar a nova rede com outra amostra de Treinar a nova rede com outra amostra de treinotreino

θθ

θθ

θθ0

1

1

ne

SAD Tagus 200405 H Galhardas

Multi-Layer neural Multi-Layer neural networknetwork

Output nodes

Input nodes

Hidden nodes

Output vector

Input vector xi

wij

i

jiijj OwI

jIje

O 11

))(1( jjjjj OTOOErr

jkk

kjjj wErrOOErr )1(

ijijij OErrlww )(jjj Errl)(

SAD Tagus 200405 H Galhardas

Ex Inicializaccedilatildeo da redeEx Inicializaccedilatildeo da redeNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

Inicializar todos os valores da redeInicializar todos os valores da rede Inicializar valores de w

Valor aleatoacuterio entre -05 e 05 ou entre -10 e 10 Inicializar valores de θ (bias) dos noacutes

Valor aleatoacuterio entre -05 e 05

=02

=-02

=-03=-03

=04

=01

=-05

=02

θθ =-04

θθ =02

θθ =01

SAD Tagus 200405 H Galhardas

Ex Input Forward Ex Input Forward (Propagaccedilatildeo das (Propagaccedilatildeo das entradas)entradas)Noacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

Passo 1Passo 1 Propagar o valor de input na rede Propagar o valor de input na rede

I4 = 1x02 + 0x04 + 1x(-05) ndash 04 = -07 Mesmo para I5

=02

=-02

=-03=-03

=04

=01

=-05

=02

θθ =-04

θθ =02

θθ =01

1

01

0

1

-07

SAD Tagus 200405 H Galhardas

Ex Input ForwardEx Input Forward (caacutelculo dos Outputs) (caacutelculo dos Outputs)Noacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

=02

=-02

=-03=-03

=04

=01

=-05

=02

θθ =-04

θθ =02

θθ =01

1

0550

1Passo 2Passo 2 Calcular o valor de Output Calcular o valor de Output

O4 = 1 (1 + e07) = 033 Mesmo para O5

Repetir passos 1 e 2 para Noacute 6Repetir passos 1 e 2 para Noacute 6

033

052

SAD Tagus 200405 H Galhardas

Ex Backpropagate ErrorEx Backpropagate ErrorNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

=02

=-02

=-03=-03

=04

=01

=-05

=02

θθ =-04

θθ =02

θθ =01

1

055

052

0

1

033

Passo 3Passo 3 Calcular o valor do erro no Output layer Calcular o valor do erro no Output layer

Sendo Tj o valor de Output real nesta amostra Oreal6=1 Err6 = (055)(1 ndash 055)(1 ndash 055) = 01311

Err6 = 01311

SAD Tagus 200405 H Galhardas

Ex Backpropagate ErrorEx Backpropagate ErrorNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

=02

=-02

=-03=-03

=04

=01

=-05

=02

θθ =-04

θθ =02

θθ =01

1

055

052

0

1

033

Err6 = 01311

Passo 4Passo 4 Calcular o valor do erro na Hidden layer Calcular o valor do erro na Hidden layer

Natildeo podemos usar o valor real pois os valores do hidden layer satildeo desconhecidos

Err4 = (033)(1 ndash 033)(01311)(-03) = -00087 Mesmo para Err5

Err5 = -00065

Err4 = -0087

SAD Tagus 200405 H Galhardas

Ex Actualizar valores de WEx Actualizar valores de WNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

θθ =-04

θθ =02

θθ =01

1

055

052

0

1

033

Passo 5Passo 5 Recalcular os valores de w Recalcular os valores de w

ℓ - constante de learning rate com valor entre 0 e 1 (neste exemplo ℓ=09) Δw46 = (09)(01311)(033) = 0039 W46 = w46 + Δw46 = -03 + 0039 = -0261 Mesmo para os restantes valores de w

=0180

=-0032

=-0267

=04

=01

=-052

=0233

=-0153

Err6 = 01311

Err5 = -00065

Err4 = -0087

SAD Tagus 200405 H Galhardas

Ex Actualizar valores de Ex Actualizar valores de θθNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

1

055

052

0

1

033

Passo 5Passo 5 Recalcular os valores de Recalcular os valores de θθ e

Δθ5 = (09)(-0065) = -00585 θ5 = θ5 + Δθ5 = 02 - 00585 = 0194

Mesmo para os restantes valores de θ

θθ =0194

θθ =-0408

θθ =0218

=0192

=-0138

=-0306

=04

=01

=-0508

=0194

=-0261

SAD Tagus 200405 H Galhardas

Ex Caso ParagemEx Caso Paragem

Realizar todos os passos com uma nova amostra de treino ateacute quehellipRealizar todos os passos com uma nova amostra de treino ateacute quehellip

((casos de paragemcasos de paragem)) Todos os Todos os ΔΔw satildeo inferiores a um valor preacute-determinadow satildeo inferiores a um valor preacute-determinado A percentagem de amostras mal classificadas na ultima iteraccedilatildeo eacute abaixo A percentagem de amostras mal classificadas na ultima iteraccedilatildeo eacute abaixo

de determinado valorde determinado valor Foi atingido um nuacutemero maacuteximo de iteraccedilotildeesFoi atingido um nuacutemero maacuteximo de iteraccedilotildees

Uma iteraccedilatildeo eacute o treino da rede com todas as amostras existentes uma vez

Noacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

1

055

052

0

1

033

θθ =0194

θθ =-0408

θθ =0218

=0192

=-0138

=-0306

=04

=01

=-0508

=0194

=-0261

SAD Tagus 200405 H Galhardas

FinalmentehellipFinalmentehellip Uma vez terminado o treino da RedehellipUma vez terminado o treino da Redehellip

Esta deve ser validada atraveacutes de um conjunto de dados de teste

Uma vez validada a rede pode ser utilizada para obter valores desconhecidos

SAD Tagus 200405 H Galhardas

BibliografiaBibliografia Data Mining Concepts and TechniquesData Mining Concepts and Techniques J J

Han amp M Kamber Morgan Kaufmann 2001 Han amp M Kamber Morgan Kaufmann 2001 (Cap 7)(Cap 7)

Machine Learning Tom Mitchell McGraw Machine Learning Tom Mitchell McGraw 1997 (Cap 4)1997 (Cap 4)

Trabalho de Investigaccedilatildeo de SAD0304 de Trabalho de Investigaccedilatildeo de SAD0304 de Pedro Canteiro sobre Redes NeuronaisPedro Canteiro sobre Redes Neuronais

Princiacutepios Essenciais do Data Mining Seacutergio Princiacutepios Essenciais do Data Mining Seacutergio Navega Navega httphttpwwwintelliwisecomwwwintelliwisecomsnavegasnavega

  • Slide 1
  • Biological Neural Networks
  • Um neuroacutenio
  • Slide 4
  • Um Perceptratildeo
  • Redes Neuronais - Composiccedilatildeo
  • Redes Neuronais - Tipos
  • Appropriate Problem Domains for Neural Network Learning
  • Redes Neuronais - Vantagens
  • Redes Neuronais - Desvantagens
  • Aplicaccedilatildeo de Redes Neuronais em DM
  • Slide 12
  • Passos para efectuar DM em Redes Neuronais
  • Transformaccedilatildeo de dados
  • Transformaccedilatildeo de Dados
  • Criaccedilatildeo da Rede Neuronal
  • Treino da Rede
  • Treino de Rede Neuronal - Exemplo
  • Algoritmo de Backpropagation
  • Multi-Layer neural network
  • Ex Inicializaccedilatildeo da rede
  • Ex Input Forward (Propagaccedilatildeo das entradas)
  • Ex Input Forward (caacutelculo dos Outputs)
  • Ex Backpropagate Error
  • Ex Backpropagate Error
  • Ex Actualizar valores de W
  • Ex Actualizar valores de θ
  • Ex Caso Paragem
  • Finalmentehellip
  • Bibliografia
Page 14: Redes Neuronais

SAD Tagus 200405 H Galhardas

Transformaccedilatildeo de dadosTransformaccedilatildeo de dados Para a utilizaccedilatildeo de DM em Redes Neuronais eacute Para a utilizaccedilatildeo de DM em Redes Neuronais eacute

necessaacuterio converter todos os campos da BD necessaacuterio converter todos os campos da BD para para valores nuacutemericos entre 0 e 1valores nuacutemericos entre 0 e 1

ExemploExemplo

SAD Tagus 200405 H Galhardas

Transformaccedilatildeo de DadosTransformaccedilatildeo de Dados Exemplo 2 Dada a seguinte tabelahellipExemplo 2 Dada a seguinte tabelahellip

Name Hair Height Weight Lotion ResultSarah Blonde Average Light No SunburnedDana Blonde Tall Average Yes Not sunburned

Alex Brown Short Average Yes Not sunburned

Hair

Blonde 100

Brown 010

Red 001

Height

Short 100

Average 010

Tall 001

WeightLight 100

Average 010

Heavy 001

Lotion No 10

Yes 01

ClassSunburned 10

Not sunburned

01

Como converter os dados de modo a Como converter os dados de modo a permitir o uso de Rede Neuronal para permitir o uso de Rede Neuronal para inferir se determinada pessoa tem o inferir se determinada pessoa tem o cabelo enfraquecido pelo solcabelo enfraquecido pelo sol

SAD Tagus 200405 H Galhardas

Criaccedilatildeo da Rede NeuronalCriaccedilatildeo da Rede Neuronal Vamos criar uma rede 2-layerVamos criar uma rede 2-layer Input layerInput layer

Hair ndash precisamos de 3 inputs Height Weight ndash 3 inputs Lotion ndash 2 inputs

Output layerOutput layer Sunburned ndash 2 Outputs

Hidden layerHidden layer Qualquer valor eacute aceitaacutevel

5 noacutes

Ficamos com uma rede 11x5x2Ficamos com uma rede 11x5x2

HairBlonde 100

Brown 010

Red 001

HeightShort 100

Average 010

Tall 001

WeightLight 100

Average 010

Heavy 001

Lotion No 10

Yes 01

ClassSunburned 10

Not sunburned

01

Hair

Height

Weight

Lotion

Sunburnedhellip hellip

SAD Tagus 200405 H Galhardas

Treino da RedeTreino da Rede Usa-se um conjunto de amostras cujo Usa-se um conjunto de amostras cujo

valor da funccedilatildeo alvo (ou objectivo) eacute valor da funccedilatildeo alvo (ou objectivo) eacute conhecido - conhecido - amostras de treinoamostras de treino

Ex a linha da tabela relativa a Sarah pode ser usada como amostra de treino

Sarah Blonde Average Light No Sunburned

SAD Tagus 200405 H Galhardas

Treino de Rede Neuronal - Treino de Rede Neuronal - ExemploExemplo

Rede NeuronalRede Neuronal 2-layer

Apenas 1 hidden layer feed forward

Sem ciclos 3 noacutes de Input 1 noacute de Output

Utilizaccedilatildeo do algoritmo de Utilizaccedilatildeo do algoritmo de backpropagationbackpropagation o mais comum para o treino de redes neuronais

SAD Tagus 200405 H Galhardas

Algoritmo de Algoritmo de BackpropagationBackpropagation

AA BB CC XX

11 00 11 11 Dada a amostra de Dada a amostra de

treinohelliptreinohellip

Calcular o Calcular o erroerro em em cada noacutecada noacute

Alterar o Alterar o pesopeso dos dos arcosarcos

Alterar o Alterar o biasbias dos noacutes dos noacutes

O55

Treinar a nova rede com outra amostra de Treinar a nova rede com outra amostra de treinotreino

θθ

θθ

θθ0

1

1

ne

SAD Tagus 200405 H Galhardas

Multi-Layer neural Multi-Layer neural networknetwork

Output nodes

Input nodes

Hidden nodes

Output vector

Input vector xi

wij

i

jiijj OwI

jIje

O 11

))(1( jjjjj OTOOErr

jkk

kjjj wErrOOErr )1(

ijijij OErrlww )(jjj Errl)(

SAD Tagus 200405 H Galhardas

Ex Inicializaccedilatildeo da redeEx Inicializaccedilatildeo da redeNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

Inicializar todos os valores da redeInicializar todos os valores da rede Inicializar valores de w

Valor aleatoacuterio entre -05 e 05 ou entre -10 e 10 Inicializar valores de θ (bias) dos noacutes

Valor aleatoacuterio entre -05 e 05

=02

=-02

=-03=-03

=04

=01

=-05

=02

θθ =-04

θθ =02

θθ =01

SAD Tagus 200405 H Galhardas

Ex Input Forward Ex Input Forward (Propagaccedilatildeo das (Propagaccedilatildeo das entradas)entradas)Noacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

Passo 1Passo 1 Propagar o valor de input na rede Propagar o valor de input na rede

I4 = 1x02 + 0x04 + 1x(-05) ndash 04 = -07 Mesmo para I5

=02

=-02

=-03=-03

=04

=01

=-05

=02

θθ =-04

θθ =02

θθ =01

1

01

0

1

-07

SAD Tagus 200405 H Galhardas

Ex Input ForwardEx Input Forward (caacutelculo dos Outputs) (caacutelculo dos Outputs)Noacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

=02

=-02

=-03=-03

=04

=01

=-05

=02

θθ =-04

θθ =02

θθ =01

1

0550

1Passo 2Passo 2 Calcular o valor de Output Calcular o valor de Output

O4 = 1 (1 + e07) = 033 Mesmo para O5

Repetir passos 1 e 2 para Noacute 6Repetir passos 1 e 2 para Noacute 6

033

052

SAD Tagus 200405 H Galhardas

Ex Backpropagate ErrorEx Backpropagate ErrorNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

=02

=-02

=-03=-03

=04

=01

=-05

=02

θθ =-04

θθ =02

θθ =01

1

055

052

0

1

033

Passo 3Passo 3 Calcular o valor do erro no Output layer Calcular o valor do erro no Output layer

Sendo Tj o valor de Output real nesta amostra Oreal6=1 Err6 = (055)(1 ndash 055)(1 ndash 055) = 01311

Err6 = 01311

SAD Tagus 200405 H Galhardas

Ex Backpropagate ErrorEx Backpropagate ErrorNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

=02

=-02

=-03=-03

=04

=01

=-05

=02

θθ =-04

θθ =02

θθ =01

1

055

052

0

1

033

Err6 = 01311

Passo 4Passo 4 Calcular o valor do erro na Hidden layer Calcular o valor do erro na Hidden layer

Natildeo podemos usar o valor real pois os valores do hidden layer satildeo desconhecidos

Err4 = (033)(1 ndash 033)(01311)(-03) = -00087 Mesmo para Err5

Err5 = -00065

Err4 = -0087

SAD Tagus 200405 H Galhardas

Ex Actualizar valores de WEx Actualizar valores de WNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

θθ =-04

θθ =02

θθ =01

1

055

052

0

1

033

Passo 5Passo 5 Recalcular os valores de w Recalcular os valores de w

ℓ - constante de learning rate com valor entre 0 e 1 (neste exemplo ℓ=09) Δw46 = (09)(01311)(033) = 0039 W46 = w46 + Δw46 = -03 + 0039 = -0261 Mesmo para os restantes valores de w

=0180

=-0032

=-0267

=04

=01

=-052

=0233

=-0153

Err6 = 01311

Err5 = -00065

Err4 = -0087

SAD Tagus 200405 H Galhardas

Ex Actualizar valores de Ex Actualizar valores de θθNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

1

055

052

0

1

033

Passo 5Passo 5 Recalcular os valores de Recalcular os valores de θθ e

Δθ5 = (09)(-0065) = -00585 θ5 = θ5 + Δθ5 = 02 - 00585 = 0194

Mesmo para os restantes valores de θ

θθ =0194

θθ =-0408

θθ =0218

=0192

=-0138

=-0306

=04

=01

=-0508

=0194

=-0261

SAD Tagus 200405 H Galhardas

Ex Caso ParagemEx Caso Paragem

Realizar todos os passos com uma nova amostra de treino ateacute quehellipRealizar todos os passos com uma nova amostra de treino ateacute quehellip

((casos de paragemcasos de paragem)) Todos os Todos os ΔΔw satildeo inferiores a um valor preacute-determinadow satildeo inferiores a um valor preacute-determinado A percentagem de amostras mal classificadas na ultima iteraccedilatildeo eacute abaixo A percentagem de amostras mal classificadas na ultima iteraccedilatildeo eacute abaixo

de determinado valorde determinado valor Foi atingido um nuacutemero maacuteximo de iteraccedilotildeesFoi atingido um nuacutemero maacuteximo de iteraccedilotildees

Uma iteraccedilatildeo eacute o treino da rede com todas as amostras existentes uma vez

Noacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

1

055

052

0

1

033

θθ =0194

θθ =-0408

θθ =0218

=0192

=-0138

=-0306

=04

=01

=-0508

=0194

=-0261

SAD Tagus 200405 H Galhardas

FinalmentehellipFinalmentehellip Uma vez terminado o treino da RedehellipUma vez terminado o treino da Redehellip

Esta deve ser validada atraveacutes de um conjunto de dados de teste

Uma vez validada a rede pode ser utilizada para obter valores desconhecidos

SAD Tagus 200405 H Galhardas

BibliografiaBibliografia Data Mining Concepts and TechniquesData Mining Concepts and Techniques J J

Han amp M Kamber Morgan Kaufmann 2001 Han amp M Kamber Morgan Kaufmann 2001 (Cap 7)(Cap 7)

Machine Learning Tom Mitchell McGraw Machine Learning Tom Mitchell McGraw 1997 (Cap 4)1997 (Cap 4)

Trabalho de Investigaccedilatildeo de SAD0304 de Trabalho de Investigaccedilatildeo de SAD0304 de Pedro Canteiro sobre Redes NeuronaisPedro Canteiro sobre Redes Neuronais

Princiacutepios Essenciais do Data Mining Seacutergio Princiacutepios Essenciais do Data Mining Seacutergio Navega Navega httphttpwwwintelliwisecomwwwintelliwisecomsnavegasnavega

  • Slide 1
  • Biological Neural Networks
  • Um neuroacutenio
  • Slide 4
  • Um Perceptratildeo
  • Redes Neuronais - Composiccedilatildeo
  • Redes Neuronais - Tipos
  • Appropriate Problem Domains for Neural Network Learning
  • Redes Neuronais - Vantagens
  • Redes Neuronais - Desvantagens
  • Aplicaccedilatildeo de Redes Neuronais em DM
  • Slide 12
  • Passos para efectuar DM em Redes Neuronais
  • Transformaccedilatildeo de dados
  • Transformaccedilatildeo de Dados
  • Criaccedilatildeo da Rede Neuronal
  • Treino da Rede
  • Treino de Rede Neuronal - Exemplo
  • Algoritmo de Backpropagation
  • Multi-Layer neural network
  • Ex Inicializaccedilatildeo da rede
  • Ex Input Forward (Propagaccedilatildeo das entradas)
  • Ex Input Forward (caacutelculo dos Outputs)
  • Ex Backpropagate Error
  • Ex Backpropagate Error
  • Ex Actualizar valores de W
  • Ex Actualizar valores de θ
  • Ex Caso Paragem
  • Finalmentehellip
  • Bibliografia
Page 15: Redes Neuronais

SAD Tagus 200405 H Galhardas

Transformaccedilatildeo de DadosTransformaccedilatildeo de Dados Exemplo 2 Dada a seguinte tabelahellipExemplo 2 Dada a seguinte tabelahellip

Name Hair Height Weight Lotion ResultSarah Blonde Average Light No SunburnedDana Blonde Tall Average Yes Not sunburned

Alex Brown Short Average Yes Not sunburned

Hair

Blonde 100

Brown 010

Red 001

Height

Short 100

Average 010

Tall 001

WeightLight 100

Average 010

Heavy 001

Lotion No 10

Yes 01

ClassSunburned 10

Not sunburned

01

Como converter os dados de modo a Como converter os dados de modo a permitir o uso de Rede Neuronal para permitir o uso de Rede Neuronal para inferir se determinada pessoa tem o inferir se determinada pessoa tem o cabelo enfraquecido pelo solcabelo enfraquecido pelo sol

SAD Tagus 200405 H Galhardas

Criaccedilatildeo da Rede NeuronalCriaccedilatildeo da Rede Neuronal Vamos criar uma rede 2-layerVamos criar uma rede 2-layer Input layerInput layer

Hair ndash precisamos de 3 inputs Height Weight ndash 3 inputs Lotion ndash 2 inputs

Output layerOutput layer Sunburned ndash 2 Outputs

Hidden layerHidden layer Qualquer valor eacute aceitaacutevel

5 noacutes

Ficamos com uma rede 11x5x2Ficamos com uma rede 11x5x2

HairBlonde 100

Brown 010

Red 001

HeightShort 100

Average 010

Tall 001

WeightLight 100

Average 010

Heavy 001

Lotion No 10

Yes 01

ClassSunburned 10

Not sunburned

01

Hair

Height

Weight

Lotion

Sunburnedhellip hellip

SAD Tagus 200405 H Galhardas

Treino da RedeTreino da Rede Usa-se um conjunto de amostras cujo Usa-se um conjunto de amostras cujo

valor da funccedilatildeo alvo (ou objectivo) eacute valor da funccedilatildeo alvo (ou objectivo) eacute conhecido - conhecido - amostras de treinoamostras de treino

Ex a linha da tabela relativa a Sarah pode ser usada como amostra de treino

Sarah Blonde Average Light No Sunburned

SAD Tagus 200405 H Galhardas

Treino de Rede Neuronal - Treino de Rede Neuronal - ExemploExemplo

Rede NeuronalRede Neuronal 2-layer

Apenas 1 hidden layer feed forward

Sem ciclos 3 noacutes de Input 1 noacute de Output

Utilizaccedilatildeo do algoritmo de Utilizaccedilatildeo do algoritmo de backpropagationbackpropagation o mais comum para o treino de redes neuronais

SAD Tagus 200405 H Galhardas

Algoritmo de Algoritmo de BackpropagationBackpropagation

AA BB CC XX

11 00 11 11 Dada a amostra de Dada a amostra de

treinohelliptreinohellip

Calcular o Calcular o erroerro em em cada noacutecada noacute

Alterar o Alterar o pesopeso dos dos arcosarcos

Alterar o Alterar o biasbias dos noacutes dos noacutes

O55

Treinar a nova rede com outra amostra de Treinar a nova rede com outra amostra de treinotreino

θθ

θθ

θθ0

1

1

ne

SAD Tagus 200405 H Galhardas

Multi-Layer neural Multi-Layer neural networknetwork

Output nodes

Input nodes

Hidden nodes

Output vector

Input vector xi

wij

i

jiijj OwI

jIje

O 11

))(1( jjjjj OTOOErr

jkk

kjjj wErrOOErr )1(

ijijij OErrlww )(jjj Errl)(

SAD Tagus 200405 H Galhardas

Ex Inicializaccedilatildeo da redeEx Inicializaccedilatildeo da redeNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

Inicializar todos os valores da redeInicializar todos os valores da rede Inicializar valores de w

Valor aleatoacuterio entre -05 e 05 ou entre -10 e 10 Inicializar valores de θ (bias) dos noacutes

Valor aleatoacuterio entre -05 e 05

=02

=-02

=-03=-03

=04

=01

=-05

=02

θθ =-04

θθ =02

θθ =01

SAD Tagus 200405 H Galhardas

Ex Input Forward Ex Input Forward (Propagaccedilatildeo das (Propagaccedilatildeo das entradas)entradas)Noacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

Passo 1Passo 1 Propagar o valor de input na rede Propagar o valor de input na rede

I4 = 1x02 + 0x04 + 1x(-05) ndash 04 = -07 Mesmo para I5

=02

=-02

=-03=-03

=04

=01

=-05

=02

θθ =-04

θθ =02

θθ =01

1

01

0

1

-07

SAD Tagus 200405 H Galhardas

Ex Input ForwardEx Input Forward (caacutelculo dos Outputs) (caacutelculo dos Outputs)Noacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

=02

=-02

=-03=-03

=04

=01

=-05

=02

θθ =-04

θθ =02

θθ =01

1

0550

1Passo 2Passo 2 Calcular o valor de Output Calcular o valor de Output

O4 = 1 (1 + e07) = 033 Mesmo para O5

Repetir passos 1 e 2 para Noacute 6Repetir passos 1 e 2 para Noacute 6

033

052

SAD Tagus 200405 H Galhardas

Ex Backpropagate ErrorEx Backpropagate ErrorNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

=02

=-02

=-03=-03

=04

=01

=-05

=02

θθ =-04

θθ =02

θθ =01

1

055

052

0

1

033

Passo 3Passo 3 Calcular o valor do erro no Output layer Calcular o valor do erro no Output layer

Sendo Tj o valor de Output real nesta amostra Oreal6=1 Err6 = (055)(1 ndash 055)(1 ndash 055) = 01311

Err6 = 01311

SAD Tagus 200405 H Galhardas

Ex Backpropagate ErrorEx Backpropagate ErrorNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

=02

=-02

=-03=-03

=04

=01

=-05

=02

θθ =-04

θθ =02

θθ =01

1

055

052

0

1

033

Err6 = 01311

Passo 4Passo 4 Calcular o valor do erro na Hidden layer Calcular o valor do erro na Hidden layer

Natildeo podemos usar o valor real pois os valores do hidden layer satildeo desconhecidos

Err4 = (033)(1 ndash 033)(01311)(-03) = -00087 Mesmo para Err5

Err5 = -00065

Err4 = -0087

SAD Tagus 200405 H Galhardas

Ex Actualizar valores de WEx Actualizar valores de WNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

θθ =-04

θθ =02

θθ =01

1

055

052

0

1

033

Passo 5Passo 5 Recalcular os valores de w Recalcular os valores de w

ℓ - constante de learning rate com valor entre 0 e 1 (neste exemplo ℓ=09) Δw46 = (09)(01311)(033) = 0039 W46 = w46 + Δw46 = -03 + 0039 = -0261 Mesmo para os restantes valores de w

=0180

=-0032

=-0267

=04

=01

=-052

=0233

=-0153

Err6 = 01311

Err5 = -00065

Err4 = -0087

SAD Tagus 200405 H Galhardas

Ex Actualizar valores de Ex Actualizar valores de θθNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

1

055

052

0

1

033

Passo 5Passo 5 Recalcular os valores de Recalcular os valores de θθ e

Δθ5 = (09)(-0065) = -00585 θ5 = θ5 + Δθ5 = 02 - 00585 = 0194

Mesmo para os restantes valores de θ

θθ =0194

θθ =-0408

θθ =0218

=0192

=-0138

=-0306

=04

=01

=-0508

=0194

=-0261

SAD Tagus 200405 H Galhardas

Ex Caso ParagemEx Caso Paragem

Realizar todos os passos com uma nova amostra de treino ateacute quehellipRealizar todos os passos com uma nova amostra de treino ateacute quehellip

((casos de paragemcasos de paragem)) Todos os Todos os ΔΔw satildeo inferiores a um valor preacute-determinadow satildeo inferiores a um valor preacute-determinado A percentagem de amostras mal classificadas na ultima iteraccedilatildeo eacute abaixo A percentagem de amostras mal classificadas na ultima iteraccedilatildeo eacute abaixo

de determinado valorde determinado valor Foi atingido um nuacutemero maacuteximo de iteraccedilotildeesFoi atingido um nuacutemero maacuteximo de iteraccedilotildees

Uma iteraccedilatildeo eacute o treino da rede com todas as amostras existentes uma vez

Noacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

1

055

052

0

1

033

θθ =0194

θθ =-0408

θθ =0218

=0192

=-0138

=-0306

=04

=01

=-0508

=0194

=-0261

SAD Tagus 200405 H Galhardas

FinalmentehellipFinalmentehellip Uma vez terminado o treino da RedehellipUma vez terminado o treino da Redehellip

Esta deve ser validada atraveacutes de um conjunto de dados de teste

Uma vez validada a rede pode ser utilizada para obter valores desconhecidos

SAD Tagus 200405 H Galhardas

BibliografiaBibliografia Data Mining Concepts and TechniquesData Mining Concepts and Techniques J J

Han amp M Kamber Morgan Kaufmann 2001 Han amp M Kamber Morgan Kaufmann 2001 (Cap 7)(Cap 7)

Machine Learning Tom Mitchell McGraw Machine Learning Tom Mitchell McGraw 1997 (Cap 4)1997 (Cap 4)

Trabalho de Investigaccedilatildeo de SAD0304 de Trabalho de Investigaccedilatildeo de SAD0304 de Pedro Canteiro sobre Redes NeuronaisPedro Canteiro sobre Redes Neuronais

Princiacutepios Essenciais do Data Mining Seacutergio Princiacutepios Essenciais do Data Mining Seacutergio Navega Navega httphttpwwwintelliwisecomwwwintelliwisecomsnavegasnavega

  • Slide 1
  • Biological Neural Networks
  • Um neuroacutenio
  • Slide 4
  • Um Perceptratildeo
  • Redes Neuronais - Composiccedilatildeo
  • Redes Neuronais - Tipos
  • Appropriate Problem Domains for Neural Network Learning
  • Redes Neuronais - Vantagens
  • Redes Neuronais - Desvantagens
  • Aplicaccedilatildeo de Redes Neuronais em DM
  • Slide 12
  • Passos para efectuar DM em Redes Neuronais
  • Transformaccedilatildeo de dados
  • Transformaccedilatildeo de Dados
  • Criaccedilatildeo da Rede Neuronal
  • Treino da Rede
  • Treino de Rede Neuronal - Exemplo
  • Algoritmo de Backpropagation
  • Multi-Layer neural network
  • Ex Inicializaccedilatildeo da rede
  • Ex Input Forward (Propagaccedilatildeo das entradas)
  • Ex Input Forward (caacutelculo dos Outputs)
  • Ex Backpropagate Error
  • Ex Backpropagate Error
  • Ex Actualizar valores de W
  • Ex Actualizar valores de θ
  • Ex Caso Paragem
  • Finalmentehellip
  • Bibliografia
Page 16: Redes Neuronais

SAD Tagus 200405 H Galhardas

Criaccedilatildeo da Rede NeuronalCriaccedilatildeo da Rede Neuronal Vamos criar uma rede 2-layerVamos criar uma rede 2-layer Input layerInput layer

Hair ndash precisamos de 3 inputs Height Weight ndash 3 inputs Lotion ndash 2 inputs

Output layerOutput layer Sunburned ndash 2 Outputs

Hidden layerHidden layer Qualquer valor eacute aceitaacutevel

5 noacutes

Ficamos com uma rede 11x5x2Ficamos com uma rede 11x5x2

HairBlonde 100

Brown 010

Red 001

HeightShort 100

Average 010

Tall 001

WeightLight 100

Average 010

Heavy 001

Lotion No 10

Yes 01

ClassSunburned 10

Not sunburned

01

Hair

Height

Weight

Lotion

Sunburnedhellip hellip

SAD Tagus 200405 H Galhardas

Treino da RedeTreino da Rede Usa-se um conjunto de amostras cujo Usa-se um conjunto de amostras cujo

valor da funccedilatildeo alvo (ou objectivo) eacute valor da funccedilatildeo alvo (ou objectivo) eacute conhecido - conhecido - amostras de treinoamostras de treino

Ex a linha da tabela relativa a Sarah pode ser usada como amostra de treino

Sarah Blonde Average Light No Sunburned

SAD Tagus 200405 H Galhardas

Treino de Rede Neuronal - Treino de Rede Neuronal - ExemploExemplo

Rede NeuronalRede Neuronal 2-layer

Apenas 1 hidden layer feed forward

Sem ciclos 3 noacutes de Input 1 noacute de Output

Utilizaccedilatildeo do algoritmo de Utilizaccedilatildeo do algoritmo de backpropagationbackpropagation o mais comum para o treino de redes neuronais

SAD Tagus 200405 H Galhardas

Algoritmo de Algoritmo de BackpropagationBackpropagation

AA BB CC XX

11 00 11 11 Dada a amostra de Dada a amostra de

treinohelliptreinohellip

Calcular o Calcular o erroerro em em cada noacutecada noacute

Alterar o Alterar o pesopeso dos dos arcosarcos

Alterar o Alterar o biasbias dos noacutes dos noacutes

O55

Treinar a nova rede com outra amostra de Treinar a nova rede com outra amostra de treinotreino

θθ

θθ

θθ0

1

1

ne

SAD Tagus 200405 H Galhardas

Multi-Layer neural Multi-Layer neural networknetwork

Output nodes

Input nodes

Hidden nodes

Output vector

Input vector xi

wij

i

jiijj OwI

jIje

O 11

))(1( jjjjj OTOOErr

jkk

kjjj wErrOOErr )1(

ijijij OErrlww )(jjj Errl)(

SAD Tagus 200405 H Galhardas

Ex Inicializaccedilatildeo da redeEx Inicializaccedilatildeo da redeNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

Inicializar todos os valores da redeInicializar todos os valores da rede Inicializar valores de w

Valor aleatoacuterio entre -05 e 05 ou entre -10 e 10 Inicializar valores de θ (bias) dos noacutes

Valor aleatoacuterio entre -05 e 05

=02

=-02

=-03=-03

=04

=01

=-05

=02

θθ =-04

θθ =02

θθ =01

SAD Tagus 200405 H Galhardas

Ex Input Forward Ex Input Forward (Propagaccedilatildeo das (Propagaccedilatildeo das entradas)entradas)Noacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

Passo 1Passo 1 Propagar o valor de input na rede Propagar o valor de input na rede

I4 = 1x02 + 0x04 + 1x(-05) ndash 04 = -07 Mesmo para I5

=02

=-02

=-03=-03

=04

=01

=-05

=02

θθ =-04

θθ =02

θθ =01

1

01

0

1

-07

SAD Tagus 200405 H Galhardas

Ex Input ForwardEx Input Forward (caacutelculo dos Outputs) (caacutelculo dos Outputs)Noacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

=02

=-02

=-03=-03

=04

=01

=-05

=02

θθ =-04

θθ =02

θθ =01

1

0550

1Passo 2Passo 2 Calcular o valor de Output Calcular o valor de Output

O4 = 1 (1 + e07) = 033 Mesmo para O5

Repetir passos 1 e 2 para Noacute 6Repetir passos 1 e 2 para Noacute 6

033

052

SAD Tagus 200405 H Galhardas

Ex Backpropagate ErrorEx Backpropagate ErrorNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

=02

=-02

=-03=-03

=04

=01

=-05

=02

θθ =-04

θθ =02

θθ =01

1

055

052

0

1

033

Passo 3Passo 3 Calcular o valor do erro no Output layer Calcular o valor do erro no Output layer

Sendo Tj o valor de Output real nesta amostra Oreal6=1 Err6 = (055)(1 ndash 055)(1 ndash 055) = 01311

Err6 = 01311

SAD Tagus 200405 H Galhardas

Ex Backpropagate ErrorEx Backpropagate ErrorNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

=02

=-02

=-03=-03

=04

=01

=-05

=02

θθ =-04

θθ =02

θθ =01

1

055

052

0

1

033

Err6 = 01311

Passo 4Passo 4 Calcular o valor do erro na Hidden layer Calcular o valor do erro na Hidden layer

Natildeo podemos usar o valor real pois os valores do hidden layer satildeo desconhecidos

Err4 = (033)(1 ndash 033)(01311)(-03) = -00087 Mesmo para Err5

Err5 = -00065

Err4 = -0087

SAD Tagus 200405 H Galhardas

Ex Actualizar valores de WEx Actualizar valores de WNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

θθ =-04

θθ =02

θθ =01

1

055

052

0

1

033

Passo 5Passo 5 Recalcular os valores de w Recalcular os valores de w

ℓ - constante de learning rate com valor entre 0 e 1 (neste exemplo ℓ=09) Δw46 = (09)(01311)(033) = 0039 W46 = w46 + Δw46 = -03 + 0039 = -0261 Mesmo para os restantes valores de w

=0180

=-0032

=-0267

=04

=01

=-052

=0233

=-0153

Err6 = 01311

Err5 = -00065

Err4 = -0087

SAD Tagus 200405 H Galhardas

Ex Actualizar valores de Ex Actualizar valores de θθNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

1

055

052

0

1

033

Passo 5Passo 5 Recalcular os valores de Recalcular os valores de θθ e

Δθ5 = (09)(-0065) = -00585 θ5 = θ5 + Δθ5 = 02 - 00585 = 0194

Mesmo para os restantes valores de θ

θθ =0194

θθ =-0408

θθ =0218

=0192

=-0138

=-0306

=04

=01

=-0508

=0194

=-0261

SAD Tagus 200405 H Galhardas

Ex Caso ParagemEx Caso Paragem

Realizar todos os passos com uma nova amostra de treino ateacute quehellipRealizar todos os passos com uma nova amostra de treino ateacute quehellip

((casos de paragemcasos de paragem)) Todos os Todos os ΔΔw satildeo inferiores a um valor preacute-determinadow satildeo inferiores a um valor preacute-determinado A percentagem de amostras mal classificadas na ultima iteraccedilatildeo eacute abaixo A percentagem de amostras mal classificadas na ultima iteraccedilatildeo eacute abaixo

de determinado valorde determinado valor Foi atingido um nuacutemero maacuteximo de iteraccedilotildeesFoi atingido um nuacutemero maacuteximo de iteraccedilotildees

Uma iteraccedilatildeo eacute o treino da rede com todas as amostras existentes uma vez

Noacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

1

055

052

0

1

033

θθ =0194

θθ =-0408

θθ =0218

=0192

=-0138

=-0306

=04

=01

=-0508

=0194

=-0261

SAD Tagus 200405 H Galhardas

FinalmentehellipFinalmentehellip Uma vez terminado o treino da RedehellipUma vez terminado o treino da Redehellip

Esta deve ser validada atraveacutes de um conjunto de dados de teste

Uma vez validada a rede pode ser utilizada para obter valores desconhecidos

SAD Tagus 200405 H Galhardas

BibliografiaBibliografia Data Mining Concepts and TechniquesData Mining Concepts and Techniques J J

Han amp M Kamber Morgan Kaufmann 2001 Han amp M Kamber Morgan Kaufmann 2001 (Cap 7)(Cap 7)

Machine Learning Tom Mitchell McGraw Machine Learning Tom Mitchell McGraw 1997 (Cap 4)1997 (Cap 4)

Trabalho de Investigaccedilatildeo de SAD0304 de Trabalho de Investigaccedilatildeo de SAD0304 de Pedro Canteiro sobre Redes NeuronaisPedro Canteiro sobre Redes Neuronais

Princiacutepios Essenciais do Data Mining Seacutergio Princiacutepios Essenciais do Data Mining Seacutergio Navega Navega httphttpwwwintelliwisecomwwwintelliwisecomsnavegasnavega

  • Slide 1
  • Biological Neural Networks
  • Um neuroacutenio
  • Slide 4
  • Um Perceptratildeo
  • Redes Neuronais - Composiccedilatildeo
  • Redes Neuronais - Tipos
  • Appropriate Problem Domains for Neural Network Learning
  • Redes Neuronais - Vantagens
  • Redes Neuronais - Desvantagens
  • Aplicaccedilatildeo de Redes Neuronais em DM
  • Slide 12
  • Passos para efectuar DM em Redes Neuronais
  • Transformaccedilatildeo de dados
  • Transformaccedilatildeo de Dados
  • Criaccedilatildeo da Rede Neuronal
  • Treino da Rede
  • Treino de Rede Neuronal - Exemplo
  • Algoritmo de Backpropagation
  • Multi-Layer neural network
  • Ex Inicializaccedilatildeo da rede
  • Ex Input Forward (Propagaccedilatildeo das entradas)
  • Ex Input Forward (caacutelculo dos Outputs)
  • Ex Backpropagate Error
  • Ex Backpropagate Error
  • Ex Actualizar valores de W
  • Ex Actualizar valores de θ
  • Ex Caso Paragem
  • Finalmentehellip
  • Bibliografia
Page 17: Redes Neuronais

SAD Tagus 200405 H Galhardas

Treino da RedeTreino da Rede Usa-se um conjunto de amostras cujo Usa-se um conjunto de amostras cujo

valor da funccedilatildeo alvo (ou objectivo) eacute valor da funccedilatildeo alvo (ou objectivo) eacute conhecido - conhecido - amostras de treinoamostras de treino

Ex a linha da tabela relativa a Sarah pode ser usada como amostra de treino

Sarah Blonde Average Light No Sunburned

SAD Tagus 200405 H Galhardas

Treino de Rede Neuronal - Treino de Rede Neuronal - ExemploExemplo

Rede NeuronalRede Neuronal 2-layer

Apenas 1 hidden layer feed forward

Sem ciclos 3 noacutes de Input 1 noacute de Output

Utilizaccedilatildeo do algoritmo de Utilizaccedilatildeo do algoritmo de backpropagationbackpropagation o mais comum para o treino de redes neuronais

SAD Tagus 200405 H Galhardas

Algoritmo de Algoritmo de BackpropagationBackpropagation

AA BB CC XX

11 00 11 11 Dada a amostra de Dada a amostra de

treinohelliptreinohellip

Calcular o Calcular o erroerro em em cada noacutecada noacute

Alterar o Alterar o pesopeso dos dos arcosarcos

Alterar o Alterar o biasbias dos noacutes dos noacutes

O55

Treinar a nova rede com outra amostra de Treinar a nova rede com outra amostra de treinotreino

θθ

θθ

θθ0

1

1

ne

SAD Tagus 200405 H Galhardas

Multi-Layer neural Multi-Layer neural networknetwork

Output nodes

Input nodes

Hidden nodes

Output vector

Input vector xi

wij

i

jiijj OwI

jIje

O 11

))(1( jjjjj OTOOErr

jkk

kjjj wErrOOErr )1(

ijijij OErrlww )(jjj Errl)(

SAD Tagus 200405 H Galhardas

Ex Inicializaccedilatildeo da redeEx Inicializaccedilatildeo da redeNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

Inicializar todos os valores da redeInicializar todos os valores da rede Inicializar valores de w

Valor aleatoacuterio entre -05 e 05 ou entre -10 e 10 Inicializar valores de θ (bias) dos noacutes

Valor aleatoacuterio entre -05 e 05

=02

=-02

=-03=-03

=04

=01

=-05

=02

θθ =-04

θθ =02

θθ =01

SAD Tagus 200405 H Galhardas

Ex Input Forward Ex Input Forward (Propagaccedilatildeo das (Propagaccedilatildeo das entradas)entradas)Noacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

Passo 1Passo 1 Propagar o valor de input na rede Propagar o valor de input na rede

I4 = 1x02 + 0x04 + 1x(-05) ndash 04 = -07 Mesmo para I5

=02

=-02

=-03=-03

=04

=01

=-05

=02

θθ =-04

θθ =02

θθ =01

1

01

0

1

-07

SAD Tagus 200405 H Galhardas

Ex Input ForwardEx Input Forward (caacutelculo dos Outputs) (caacutelculo dos Outputs)Noacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

=02

=-02

=-03=-03

=04

=01

=-05

=02

θθ =-04

θθ =02

θθ =01

1

0550

1Passo 2Passo 2 Calcular o valor de Output Calcular o valor de Output

O4 = 1 (1 + e07) = 033 Mesmo para O5

Repetir passos 1 e 2 para Noacute 6Repetir passos 1 e 2 para Noacute 6

033

052

SAD Tagus 200405 H Galhardas

Ex Backpropagate ErrorEx Backpropagate ErrorNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

=02

=-02

=-03=-03

=04

=01

=-05

=02

θθ =-04

θθ =02

θθ =01

1

055

052

0

1

033

Passo 3Passo 3 Calcular o valor do erro no Output layer Calcular o valor do erro no Output layer

Sendo Tj o valor de Output real nesta amostra Oreal6=1 Err6 = (055)(1 ndash 055)(1 ndash 055) = 01311

Err6 = 01311

SAD Tagus 200405 H Galhardas

Ex Backpropagate ErrorEx Backpropagate ErrorNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

=02

=-02

=-03=-03

=04

=01

=-05

=02

θθ =-04

θθ =02

θθ =01

1

055

052

0

1

033

Err6 = 01311

Passo 4Passo 4 Calcular o valor do erro na Hidden layer Calcular o valor do erro na Hidden layer

Natildeo podemos usar o valor real pois os valores do hidden layer satildeo desconhecidos

Err4 = (033)(1 ndash 033)(01311)(-03) = -00087 Mesmo para Err5

Err5 = -00065

Err4 = -0087

SAD Tagus 200405 H Galhardas

Ex Actualizar valores de WEx Actualizar valores de WNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

θθ =-04

θθ =02

θθ =01

1

055

052

0

1

033

Passo 5Passo 5 Recalcular os valores de w Recalcular os valores de w

ℓ - constante de learning rate com valor entre 0 e 1 (neste exemplo ℓ=09) Δw46 = (09)(01311)(033) = 0039 W46 = w46 + Δw46 = -03 + 0039 = -0261 Mesmo para os restantes valores de w

=0180

=-0032

=-0267

=04

=01

=-052

=0233

=-0153

Err6 = 01311

Err5 = -00065

Err4 = -0087

SAD Tagus 200405 H Galhardas

Ex Actualizar valores de Ex Actualizar valores de θθNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

1

055

052

0

1

033

Passo 5Passo 5 Recalcular os valores de Recalcular os valores de θθ e

Δθ5 = (09)(-0065) = -00585 θ5 = θ5 + Δθ5 = 02 - 00585 = 0194

Mesmo para os restantes valores de θ

θθ =0194

θθ =-0408

θθ =0218

=0192

=-0138

=-0306

=04

=01

=-0508

=0194

=-0261

SAD Tagus 200405 H Galhardas

Ex Caso ParagemEx Caso Paragem

Realizar todos os passos com uma nova amostra de treino ateacute quehellipRealizar todos os passos com uma nova amostra de treino ateacute quehellip

((casos de paragemcasos de paragem)) Todos os Todos os ΔΔw satildeo inferiores a um valor preacute-determinadow satildeo inferiores a um valor preacute-determinado A percentagem de amostras mal classificadas na ultima iteraccedilatildeo eacute abaixo A percentagem de amostras mal classificadas na ultima iteraccedilatildeo eacute abaixo

de determinado valorde determinado valor Foi atingido um nuacutemero maacuteximo de iteraccedilotildeesFoi atingido um nuacutemero maacuteximo de iteraccedilotildees

Uma iteraccedilatildeo eacute o treino da rede com todas as amostras existentes uma vez

Noacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

1

055

052

0

1

033

θθ =0194

θθ =-0408

θθ =0218

=0192

=-0138

=-0306

=04

=01

=-0508

=0194

=-0261

SAD Tagus 200405 H Galhardas

FinalmentehellipFinalmentehellip Uma vez terminado o treino da RedehellipUma vez terminado o treino da Redehellip

Esta deve ser validada atraveacutes de um conjunto de dados de teste

Uma vez validada a rede pode ser utilizada para obter valores desconhecidos

SAD Tagus 200405 H Galhardas

BibliografiaBibliografia Data Mining Concepts and TechniquesData Mining Concepts and Techniques J J

Han amp M Kamber Morgan Kaufmann 2001 Han amp M Kamber Morgan Kaufmann 2001 (Cap 7)(Cap 7)

Machine Learning Tom Mitchell McGraw Machine Learning Tom Mitchell McGraw 1997 (Cap 4)1997 (Cap 4)

Trabalho de Investigaccedilatildeo de SAD0304 de Trabalho de Investigaccedilatildeo de SAD0304 de Pedro Canteiro sobre Redes NeuronaisPedro Canteiro sobre Redes Neuronais

Princiacutepios Essenciais do Data Mining Seacutergio Princiacutepios Essenciais do Data Mining Seacutergio Navega Navega httphttpwwwintelliwisecomwwwintelliwisecomsnavegasnavega

  • Slide 1
  • Biological Neural Networks
  • Um neuroacutenio
  • Slide 4
  • Um Perceptratildeo
  • Redes Neuronais - Composiccedilatildeo
  • Redes Neuronais - Tipos
  • Appropriate Problem Domains for Neural Network Learning
  • Redes Neuronais - Vantagens
  • Redes Neuronais - Desvantagens
  • Aplicaccedilatildeo de Redes Neuronais em DM
  • Slide 12
  • Passos para efectuar DM em Redes Neuronais
  • Transformaccedilatildeo de dados
  • Transformaccedilatildeo de Dados
  • Criaccedilatildeo da Rede Neuronal
  • Treino da Rede
  • Treino de Rede Neuronal - Exemplo
  • Algoritmo de Backpropagation
  • Multi-Layer neural network
  • Ex Inicializaccedilatildeo da rede
  • Ex Input Forward (Propagaccedilatildeo das entradas)
  • Ex Input Forward (caacutelculo dos Outputs)
  • Ex Backpropagate Error
  • Ex Backpropagate Error
  • Ex Actualizar valores de W
  • Ex Actualizar valores de θ
  • Ex Caso Paragem
  • Finalmentehellip
  • Bibliografia
Page 18: Redes Neuronais

SAD Tagus 200405 H Galhardas

Treino de Rede Neuronal - Treino de Rede Neuronal - ExemploExemplo

Rede NeuronalRede Neuronal 2-layer

Apenas 1 hidden layer feed forward

Sem ciclos 3 noacutes de Input 1 noacute de Output

Utilizaccedilatildeo do algoritmo de Utilizaccedilatildeo do algoritmo de backpropagationbackpropagation o mais comum para o treino de redes neuronais

SAD Tagus 200405 H Galhardas

Algoritmo de Algoritmo de BackpropagationBackpropagation

AA BB CC XX

11 00 11 11 Dada a amostra de Dada a amostra de

treinohelliptreinohellip

Calcular o Calcular o erroerro em em cada noacutecada noacute

Alterar o Alterar o pesopeso dos dos arcosarcos

Alterar o Alterar o biasbias dos noacutes dos noacutes

O55

Treinar a nova rede com outra amostra de Treinar a nova rede com outra amostra de treinotreino

θθ

θθ

θθ0

1

1

ne

SAD Tagus 200405 H Galhardas

Multi-Layer neural Multi-Layer neural networknetwork

Output nodes

Input nodes

Hidden nodes

Output vector

Input vector xi

wij

i

jiijj OwI

jIje

O 11

))(1( jjjjj OTOOErr

jkk

kjjj wErrOOErr )1(

ijijij OErrlww )(jjj Errl)(

SAD Tagus 200405 H Galhardas

Ex Inicializaccedilatildeo da redeEx Inicializaccedilatildeo da redeNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

Inicializar todos os valores da redeInicializar todos os valores da rede Inicializar valores de w

Valor aleatoacuterio entre -05 e 05 ou entre -10 e 10 Inicializar valores de θ (bias) dos noacutes

Valor aleatoacuterio entre -05 e 05

=02

=-02

=-03=-03

=04

=01

=-05

=02

θθ =-04

θθ =02

θθ =01

SAD Tagus 200405 H Galhardas

Ex Input Forward Ex Input Forward (Propagaccedilatildeo das (Propagaccedilatildeo das entradas)entradas)Noacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

Passo 1Passo 1 Propagar o valor de input na rede Propagar o valor de input na rede

I4 = 1x02 + 0x04 + 1x(-05) ndash 04 = -07 Mesmo para I5

=02

=-02

=-03=-03

=04

=01

=-05

=02

θθ =-04

θθ =02

θθ =01

1

01

0

1

-07

SAD Tagus 200405 H Galhardas

Ex Input ForwardEx Input Forward (caacutelculo dos Outputs) (caacutelculo dos Outputs)Noacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

=02

=-02

=-03=-03

=04

=01

=-05

=02

θθ =-04

θθ =02

θθ =01

1

0550

1Passo 2Passo 2 Calcular o valor de Output Calcular o valor de Output

O4 = 1 (1 + e07) = 033 Mesmo para O5

Repetir passos 1 e 2 para Noacute 6Repetir passos 1 e 2 para Noacute 6

033

052

SAD Tagus 200405 H Galhardas

Ex Backpropagate ErrorEx Backpropagate ErrorNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

=02

=-02

=-03=-03

=04

=01

=-05

=02

θθ =-04

θθ =02

θθ =01

1

055

052

0

1

033

Passo 3Passo 3 Calcular o valor do erro no Output layer Calcular o valor do erro no Output layer

Sendo Tj o valor de Output real nesta amostra Oreal6=1 Err6 = (055)(1 ndash 055)(1 ndash 055) = 01311

Err6 = 01311

SAD Tagus 200405 H Galhardas

Ex Backpropagate ErrorEx Backpropagate ErrorNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

=02

=-02

=-03=-03

=04

=01

=-05

=02

θθ =-04

θθ =02

θθ =01

1

055

052

0

1

033

Err6 = 01311

Passo 4Passo 4 Calcular o valor do erro na Hidden layer Calcular o valor do erro na Hidden layer

Natildeo podemos usar o valor real pois os valores do hidden layer satildeo desconhecidos

Err4 = (033)(1 ndash 033)(01311)(-03) = -00087 Mesmo para Err5

Err5 = -00065

Err4 = -0087

SAD Tagus 200405 H Galhardas

Ex Actualizar valores de WEx Actualizar valores de WNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

θθ =-04

θθ =02

θθ =01

1

055

052

0

1

033

Passo 5Passo 5 Recalcular os valores de w Recalcular os valores de w

ℓ - constante de learning rate com valor entre 0 e 1 (neste exemplo ℓ=09) Δw46 = (09)(01311)(033) = 0039 W46 = w46 + Δw46 = -03 + 0039 = -0261 Mesmo para os restantes valores de w

=0180

=-0032

=-0267

=04

=01

=-052

=0233

=-0153

Err6 = 01311

Err5 = -00065

Err4 = -0087

SAD Tagus 200405 H Galhardas

Ex Actualizar valores de Ex Actualizar valores de θθNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

1

055

052

0

1

033

Passo 5Passo 5 Recalcular os valores de Recalcular os valores de θθ e

Δθ5 = (09)(-0065) = -00585 θ5 = θ5 + Δθ5 = 02 - 00585 = 0194

Mesmo para os restantes valores de θ

θθ =0194

θθ =-0408

θθ =0218

=0192

=-0138

=-0306

=04

=01

=-0508

=0194

=-0261

SAD Tagus 200405 H Galhardas

Ex Caso ParagemEx Caso Paragem

Realizar todos os passos com uma nova amostra de treino ateacute quehellipRealizar todos os passos com uma nova amostra de treino ateacute quehellip

((casos de paragemcasos de paragem)) Todos os Todos os ΔΔw satildeo inferiores a um valor preacute-determinadow satildeo inferiores a um valor preacute-determinado A percentagem de amostras mal classificadas na ultima iteraccedilatildeo eacute abaixo A percentagem de amostras mal classificadas na ultima iteraccedilatildeo eacute abaixo

de determinado valorde determinado valor Foi atingido um nuacutemero maacuteximo de iteraccedilotildeesFoi atingido um nuacutemero maacuteximo de iteraccedilotildees

Uma iteraccedilatildeo eacute o treino da rede com todas as amostras existentes uma vez

Noacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

1

055

052

0

1

033

θθ =0194

θθ =-0408

θθ =0218

=0192

=-0138

=-0306

=04

=01

=-0508

=0194

=-0261

SAD Tagus 200405 H Galhardas

FinalmentehellipFinalmentehellip Uma vez terminado o treino da RedehellipUma vez terminado o treino da Redehellip

Esta deve ser validada atraveacutes de um conjunto de dados de teste

Uma vez validada a rede pode ser utilizada para obter valores desconhecidos

SAD Tagus 200405 H Galhardas

BibliografiaBibliografia Data Mining Concepts and TechniquesData Mining Concepts and Techniques J J

Han amp M Kamber Morgan Kaufmann 2001 Han amp M Kamber Morgan Kaufmann 2001 (Cap 7)(Cap 7)

Machine Learning Tom Mitchell McGraw Machine Learning Tom Mitchell McGraw 1997 (Cap 4)1997 (Cap 4)

Trabalho de Investigaccedilatildeo de SAD0304 de Trabalho de Investigaccedilatildeo de SAD0304 de Pedro Canteiro sobre Redes NeuronaisPedro Canteiro sobre Redes Neuronais

Princiacutepios Essenciais do Data Mining Seacutergio Princiacutepios Essenciais do Data Mining Seacutergio Navega Navega httphttpwwwintelliwisecomwwwintelliwisecomsnavegasnavega

  • Slide 1
  • Biological Neural Networks
  • Um neuroacutenio
  • Slide 4
  • Um Perceptratildeo
  • Redes Neuronais - Composiccedilatildeo
  • Redes Neuronais - Tipos
  • Appropriate Problem Domains for Neural Network Learning
  • Redes Neuronais - Vantagens
  • Redes Neuronais - Desvantagens
  • Aplicaccedilatildeo de Redes Neuronais em DM
  • Slide 12
  • Passos para efectuar DM em Redes Neuronais
  • Transformaccedilatildeo de dados
  • Transformaccedilatildeo de Dados
  • Criaccedilatildeo da Rede Neuronal
  • Treino da Rede
  • Treino de Rede Neuronal - Exemplo
  • Algoritmo de Backpropagation
  • Multi-Layer neural network
  • Ex Inicializaccedilatildeo da rede
  • Ex Input Forward (Propagaccedilatildeo das entradas)
  • Ex Input Forward (caacutelculo dos Outputs)
  • Ex Backpropagate Error
  • Ex Backpropagate Error
  • Ex Actualizar valores de W
  • Ex Actualizar valores de θ
  • Ex Caso Paragem
  • Finalmentehellip
  • Bibliografia
Page 19: Redes Neuronais

SAD Tagus 200405 H Galhardas

Algoritmo de Algoritmo de BackpropagationBackpropagation

AA BB CC XX

11 00 11 11 Dada a amostra de Dada a amostra de

treinohelliptreinohellip

Calcular o Calcular o erroerro em em cada noacutecada noacute

Alterar o Alterar o pesopeso dos dos arcosarcos

Alterar o Alterar o biasbias dos noacutes dos noacutes

O55

Treinar a nova rede com outra amostra de Treinar a nova rede com outra amostra de treinotreino

θθ

θθ

θθ0

1

1

ne

SAD Tagus 200405 H Galhardas

Multi-Layer neural Multi-Layer neural networknetwork

Output nodes

Input nodes

Hidden nodes

Output vector

Input vector xi

wij

i

jiijj OwI

jIje

O 11

))(1( jjjjj OTOOErr

jkk

kjjj wErrOOErr )1(

ijijij OErrlww )(jjj Errl)(

SAD Tagus 200405 H Galhardas

Ex Inicializaccedilatildeo da redeEx Inicializaccedilatildeo da redeNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

Inicializar todos os valores da redeInicializar todos os valores da rede Inicializar valores de w

Valor aleatoacuterio entre -05 e 05 ou entre -10 e 10 Inicializar valores de θ (bias) dos noacutes

Valor aleatoacuterio entre -05 e 05

=02

=-02

=-03=-03

=04

=01

=-05

=02

θθ =-04

θθ =02

θθ =01

SAD Tagus 200405 H Galhardas

Ex Input Forward Ex Input Forward (Propagaccedilatildeo das (Propagaccedilatildeo das entradas)entradas)Noacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

Passo 1Passo 1 Propagar o valor de input na rede Propagar o valor de input na rede

I4 = 1x02 + 0x04 + 1x(-05) ndash 04 = -07 Mesmo para I5

=02

=-02

=-03=-03

=04

=01

=-05

=02

θθ =-04

θθ =02

θθ =01

1

01

0

1

-07

SAD Tagus 200405 H Galhardas

Ex Input ForwardEx Input Forward (caacutelculo dos Outputs) (caacutelculo dos Outputs)Noacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

=02

=-02

=-03=-03

=04

=01

=-05

=02

θθ =-04

θθ =02

θθ =01

1

0550

1Passo 2Passo 2 Calcular o valor de Output Calcular o valor de Output

O4 = 1 (1 + e07) = 033 Mesmo para O5

Repetir passos 1 e 2 para Noacute 6Repetir passos 1 e 2 para Noacute 6

033

052

SAD Tagus 200405 H Galhardas

Ex Backpropagate ErrorEx Backpropagate ErrorNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

=02

=-02

=-03=-03

=04

=01

=-05

=02

θθ =-04

θθ =02

θθ =01

1

055

052

0

1

033

Passo 3Passo 3 Calcular o valor do erro no Output layer Calcular o valor do erro no Output layer

Sendo Tj o valor de Output real nesta amostra Oreal6=1 Err6 = (055)(1 ndash 055)(1 ndash 055) = 01311

Err6 = 01311

SAD Tagus 200405 H Galhardas

Ex Backpropagate ErrorEx Backpropagate ErrorNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

=02

=-02

=-03=-03

=04

=01

=-05

=02

θθ =-04

θθ =02

θθ =01

1

055

052

0

1

033

Err6 = 01311

Passo 4Passo 4 Calcular o valor do erro na Hidden layer Calcular o valor do erro na Hidden layer

Natildeo podemos usar o valor real pois os valores do hidden layer satildeo desconhecidos

Err4 = (033)(1 ndash 033)(01311)(-03) = -00087 Mesmo para Err5

Err5 = -00065

Err4 = -0087

SAD Tagus 200405 H Galhardas

Ex Actualizar valores de WEx Actualizar valores de WNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

θθ =-04

θθ =02

θθ =01

1

055

052

0

1

033

Passo 5Passo 5 Recalcular os valores de w Recalcular os valores de w

ℓ - constante de learning rate com valor entre 0 e 1 (neste exemplo ℓ=09) Δw46 = (09)(01311)(033) = 0039 W46 = w46 + Δw46 = -03 + 0039 = -0261 Mesmo para os restantes valores de w

=0180

=-0032

=-0267

=04

=01

=-052

=0233

=-0153

Err6 = 01311

Err5 = -00065

Err4 = -0087

SAD Tagus 200405 H Galhardas

Ex Actualizar valores de Ex Actualizar valores de θθNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

1

055

052

0

1

033

Passo 5Passo 5 Recalcular os valores de Recalcular os valores de θθ e

Δθ5 = (09)(-0065) = -00585 θ5 = θ5 + Δθ5 = 02 - 00585 = 0194

Mesmo para os restantes valores de θ

θθ =0194

θθ =-0408

θθ =0218

=0192

=-0138

=-0306

=04

=01

=-0508

=0194

=-0261

SAD Tagus 200405 H Galhardas

Ex Caso ParagemEx Caso Paragem

Realizar todos os passos com uma nova amostra de treino ateacute quehellipRealizar todos os passos com uma nova amostra de treino ateacute quehellip

((casos de paragemcasos de paragem)) Todos os Todos os ΔΔw satildeo inferiores a um valor preacute-determinadow satildeo inferiores a um valor preacute-determinado A percentagem de amostras mal classificadas na ultima iteraccedilatildeo eacute abaixo A percentagem de amostras mal classificadas na ultima iteraccedilatildeo eacute abaixo

de determinado valorde determinado valor Foi atingido um nuacutemero maacuteximo de iteraccedilotildeesFoi atingido um nuacutemero maacuteximo de iteraccedilotildees

Uma iteraccedilatildeo eacute o treino da rede com todas as amostras existentes uma vez

Noacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

1

055

052

0

1

033

θθ =0194

θθ =-0408

θθ =0218

=0192

=-0138

=-0306

=04

=01

=-0508

=0194

=-0261

SAD Tagus 200405 H Galhardas

FinalmentehellipFinalmentehellip Uma vez terminado o treino da RedehellipUma vez terminado o treino da Redehellip

Esta deve ser validada atraveacutes de um conjunto de dados de teste

Uma vez validada a rede pode ser utilizada para obter valores desconhecidos

SAD Tagus 200405 H Galhardas

BibliografiaBibliografia Data Mining Concepts and TechniquesData Mining Concepts and Techniques J J

Han amp M Kamber Morgan Kaufmann 2001 Han amp M Kamber Morgan Kaufmann 2001 (Cap 7)(Cap 7)

Machine Learning Tom Mitchell McGraw Machine Learning Tom Mitchell McGraw 1997 (Cap 4)1997 (Cap 4)

Trabalho de Investigaccedilatildeo de SAD0304 de Trabalho de Investigaccedilatildeo de SAD0304 de Pedro Canteiro sobre Redes NeuronaisPedro Canteiro sobre Redes Neuronais

Princiacutepios Essenciais do Data Mining Seacutergio Princiacutepios Essenciais do Data Mining Seacutergio Navega Navega httphttpwwwintelliwisecomwwwintelliwisecomsnavegasnavega

  • Slide 1
  • Biological Neural Networks
  • Um neuroacutenio
  • Slide 4
  • Um Perceptratildeo
  • Redes Neuronais - Composiccedilatildeo
  • Redes Neuronais - Tipos
  • Appropriate Problem Domains for Neural Network Learning
  • Redes Neuronais - Vantagens
  • Redes Neuronais - Desvantagens
  • Aplicaccedilatildeo de Redes Neuronais em DM
  • Slide 12
  • Passos para efectuar DM em Redes Neuronais
  • Transformaccedilatildeo de dados
  • Transformaccedilatildeo de Dados
  • Criaccedilatildeo da Rede Neuronal
  • Treino da Rede
  • Treino de Rede Neuronal - Exemplo
  • Algoritmo de Backpropagation
  • Multi-Layer neural network
  • Ex Inicializaccedilatildeo da rede
  • Ex Input Forward (Propagaccedilatildeo das entradas)
  • Ex Input Forward (caacutelculo dos Outputs)
  • Ex Backpropagate Error
  • Ex Backpropagate Error
  • Ex Actualizar valores de W
  • Ex Actualizar valores de θ
  • Ex Caso Paragem
  • Finalmentehellip
  • Bibliografia
Page 20: Redes Neuronais

SAD Tagus 200405 H Galhardas

Multi-Layer neural Multi-Layer neural networknetwork

Output nodes

Input nodes

Hidden nodes

Output vector

Input vector xi

wij

i

jiijj OwI

jIje

O 11

))(1( jjjjj OTOOErr

jkk

kjjj wErrOOErr )1(

ijijij OErrlww )(jjj Errl)(

SAD Tagus 200405 H Galhardas

Ex Inicializaccedilatildeo da redeEx Inicializaccedilatildeo da redeNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

Inicializar todos os valores da redeInicializar todos os valores da rede Inicializar valores de w

Valor aleatoacuterio entre -05 e 05 ou entre -10 e 10 Inicializar valores de θ (bias) dos noacutes

Valor aleatoacuterio entre -05 e 05

=02

=-02

=-03=-03

=04

=01

=-05

=02

θθ =-04

θθ =02

θθ =01

SAD Tagus 200405 H Galhardas

Ex Input Forward Ex Input Forward (Propagaccedilatildeo das (Propagaccedilatildeo das entradas)entradas)Noacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

Passo 1Passo 1 Propagar o valor de input na rede Propagar o valor de input na rede

I4 = 1x02 + 0x04 + 1x(-05) ndash 04 = -07 Mesmo para I5

=02

=-02

=-03=-03

=04

=01

=-05

=02

θθ =-04

θθ =02

θθ =01

1

01

0

1

-07

SAD Tagus 200405 H Galhardas

Ex Input ForwardEx Input Forward (caacutelculo dos Outputs) (caacutelculo dos Outputs)Noacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

=02

=-02

=-03=-03

=04

=01

=-05

=02

θθ =-04

θθ =02

θθ =01

1

0550

1Passo 2Passo 2 Calcular o valor de Output Calcular o valor de Output

O4 = 1 (1 + e07) = 033 Mesmo para O5

Repetir passos 1 e 2 para Noacute 6Repetir passos 1 e 2 para Noacute 6

033

052

SAD Tagus 200405 H Galhardas

Ex Backpropagate ErrorEx Backpropagate ErrorNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

=02

=-02

=-03=-03

=04

=01

=-05

=02

θθ =-04

θθ =02

θθ =01

1

055

052

0

1

033

Passo 3Passo 3 Calcular o valor do erro no Output layer Calcular o valor do erro no Output layer

Sendo Tj o valor de Output real nesta amostra Oreal6=1 Err6 = (055)(1 ndash 055)(1 ndash 055) = 01311

Err6 = 01311

SAD Tagus 200405 H Galhardas

Ex Backpropagate ErrorEx Backpropagate ErrorNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

=02

=-02

=-03=-03

=04

=01

=-05

=02

θθ =-04

θθ =02

θθ =01

1

055

052

0

1

033

Err6 = 01311

Passo 4Passo 4 Calcular o valor do erro na Hidden layer Calcular o valor do erro na Hidden layer

Natildeo podemos usar o valor real pois os valores do hidden layer satildeo desconhecidos

Err4 = (033)(1 ndash 033)(01311)(-03) = -00087 Mesmo para Err5

Err5 = -00065

Err4 = -0087

SAD Tagus 200405 H Galhardas

Ex Actualizar valores de WEx Actualizar valores de WNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

θθ =-04

θθ =02

θθ =01

1

055

052

0

1

033

Passo 5Passo 5 Recalcular os valores de w Recalcular os valores de w

ℓ - constante de learning rate com valor entre 0 e 1 (neste exemplo ℓ=09) Δw46 = (09)(01311)(033) = 0039 W46 = w46 + Δw46 = -03 + 0039 = -0261 Mesmo para os restantes valores de w

=0180

=-0032

=-0267

=04

=01

=-052

=0233

=-0153

Err6 = 01311

Err5 = -00065

Err4 = -0087

SAD Tagus 200405 H Galhardas

Ex Actualizar valores de Ex Actualizar valores de θθNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

1

055

052

0

1

033

Passo 5Passo 5 Recalcular os valores de Recalcular os valores de θθ e

Δθ5 = (09)(-0065) = -00585 θ5 = θ5 + Δθ5 = 02 - 00585 = 0194

Mesmo para os restantes valores de θ

θθ =0194

θθ =-0408

θθ =0218

=0192

=-0138

=-0306

=04

=01

=-0508

=0194

=-0261

SAD Tagus 200405 H Galhardas

Ex Caso ParagemEx Caso Paragem

Realizar todos os passos com uma nova amostra de treino ateacute quehellipRealizar todos os passos com uma nova amostra de treino ateacute quehellip

((casos de paragemcasos de paragem)) Todos os Todos os ΔΔw satildeo inferiores a um valor preacute-determinadow satildeo inferiores a um valor preacute-determinado A percentagem de amostras mal classificadas na ultima iteraccedilatildeo eacute abaixo A percentagem de amostras mal classificadas na ultima iteraccedilatildeo eacute abaixo

de determinado valorde determinado valor Foi atingido um nuacutemero maacuteximo de iteraccedilotildeesFoi atingido um nuacutemero maacuteximo de iteraccedilotildees

Uma iteraccedilatildeo eacute o treino da rede com todas as amostras existentes uma vez

Noacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

1

055

052

0

1

033

θθ =0194

θθ =-0408

θθ =0218

=0192

=-0138

=-0306

=04

=01

=-0508

=0194

=-0261

SAD Tagus 200405 H Galhardas

FinalmentehellipFinalmentehellip Uma vez terminado o treino da RedehellipUma vez terminado o treino da Redehellip

Esta deve ser validada atraveacutes de um conjunto de dados de teste

Uma vez validada a rede pode ser utilizada para obter valores desconhecidos

SAD Tagus 200405 H Galhardas

BibliografiaBibliografia Data Mining Concepts and TechniquesData Mining Concepts and Techniques J J

Han amp M Kamber Morgan Kaufmann 2001 Han amp M Kamber Morgan Kaufmann 2001 (Cap 7)(Cap 7)

Machine Learning Tom Mitchell McGraw Machine Learning Tom Mitchell McGraw 1997 (Cap 4)1997 (Cap 4)

Trabalho de Investigaccedilatildeo de SAD0304 de Trabalho de Investigaccedilatildeo de SAD0304 de Pedro Canteiro sobre Redes NeuronaisPedro Canteiro sobre Redes Neuronais

Princiacutepios Essenciais do Data Mining Seacutergio Princiacutepios Essenciais do Data Mining Seacutergio Navega Navega httphttpwwwintelliwisecomwwwintelliwisecomsnavegasnavega

  • Slide 1
  • Biological Neural Networks
  • Um neuroacutenio
  • Slide 4
  • Um Perceptratildeo
  • Redes Neuronais - Composiccedilatildeo
  • Redes Neuronais - Tipos
  • Appropriate Problem Domains for Neural Network Learning
  • Redes Neuronais - Vantagens
  • Redes Neuronais - Desvantagens
  • Aplicaccedilatildeo de Redes Neuronais em DM
  • Slide 12
  • Passos para efectuar DM em Redes Neuronais
  • Transformaccedilatildeo de dados
  • Transformaccedilatildeo de Dados
  • Criaccedilatildeo da Rede Neuronal
  • Treino da Rede
  • Treino de Rede Neuronal - Exemplo
  • Algoritmo de Backpropagation
  • Multi-Layer neural network
  • Ex Inicializaccedilatildeo da rede
  • Ex Input Forward (Propagaccedilatildeo das entradas)
  • Ex Input Forward (caacutelculo dos Outputs)
  • Ex Backpropagate Error
  • Ex Backpropagate Error
  • Ex Actualizar valores de W
  • Ex Actualizar valores de θ
  • Ex Caso Paragem
  • Finalmentehellip
  • Bibliografia
Page 21: Redes Neuronais

SAD Tagus 200405 H Galhardas

Ex Inicializaccedilatildeo da redeEx Inicializaccedilatildeo da redeNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

Inicializar todos os valores da redeInicializar todos os valores da rede Inicializar valores de w

Valor aleatoacuterio entre -05 e 05 ou entre -10 e 10 Inicializar valores de θ (bias) dos noacutes

Valor aleatoacuterio entre -05 e 05

=02

=-02

=-03=-03

=04

=01

=-05

=02

θθ =-04

θθ =02

θθ =01

SAD Tagus 200405 H Galhardas

Ex Input Forward Ex Input Forward (Propagaccedilatildeo das (Propagaccedilatildeo das entradas)entradas)Noacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

Passo 1Passo 1 Propagar o valor de input na rede Propagar o valor de input na rede

I4 = 1x02 + 0x04 + 1x(-05) ndash 04 = -07 Mesmo para I5

=02

=-02

=-03=-03

=04

=01

=-05

=02

θθ =-04

θθ =02

θθ =01

1

01

0

1

-07

SAD Tagus 200405 H Galhardas

Ex Input ForwardEx Input Forward (caacutelculo dos Outputs) (caacutelculo dos Outputs)Noacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

=02

=-02

=-03=-03

=04

=01

=-05

=02

θθ =-04

θθ =02

θθ =01

1

0550

1Passo 2Passo 2 Calcular o valor de Output Calcular o valor de Output

O4 = 1 (1 + e07) = 033 Mesmo para O5

Repetir passos 1 e 2 para Noacute 6Repetir passos 1 e 2 para Noacute 6

033

052

SAD Tagus 200405 H Galhardas

Ex Backpropagate ErrorEx Backpropagate ErrorNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

=02

=-02

=-03=-03

=04

=01

=-05

=02

θθ =-04

θθ =02

θθ =01

1

055

052

0

1

033

Passo 3Passo 3 Calcular o valor do erro no Output layer Calcular o valor do erro no Output layer

Sendo Tj o valor de Output real nesta amostra Oreal6=1 Err6 = (055)(1 ndash 055)(1 ndash 055) = 01311

Err6 = 01311

SAD Tagus 200405 H Galhardas

Ex Backpropagate ErrorEx Backpropagate ErrorNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

=02

=-02

=-03=-03

=04

=01

=-05

=02

θθ =-04

θθ =02

θθ =01

1

055

052

0

1

033

Err6 = 01311

Passo 4Passo 4 Calcular o valor do erro na Hidden layer Calcular o valor do erro na Hidden layer

Natildeo podemos usar o valor real pois os valores do hidden layer satildeo desconhecidos

Err4 = (033)(1 ndash 033)(01311)(-03) = -00087 Mesmo para Err5

Err5 = -00065

Err4 = -0087

SAD Tagus 200405 H Galhardas

Ex Actualizar valores de WEx Actualizar valores de WNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

θθ =-04

θθ =02

θθ =01

1

055

052

0

1

033

Passo 5Passo 5 Recalcular os valores de w Recalcular os valores de w

ℓ - constante de learning rate com valor entre 0 e 1 (neste exemplo ℓ=09) Δw46 = (09)(01311)(033) = 0039 W46 = w46 + Δw46 = -03 + 0039 = -0261 Mesmo para os restantes valores de w

=0180

=-0032

=-0267

=04

=01

=-052

=0233

=-0153

Err6 = 01311

Err5 = -00065

Err4 = -0087

SAD Tagus 200405 H Galhardas

Ex Actualizar valores de Ex Actualizar valores de θθNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

1

055

052

0

1

033

Passo 5Passo 5 Recalcular os valores de Recalcular os valores de θθ e

Δθ5 = (09)(-0065) = -00585 θ5 = θ5 + Δθ5 = 02 - 00585 = 0194

Mesmo para os restantes valores de θ

θθ =0194

θθ =-0408

θθ =0218

=0192

=-0138

=-0306

=04

=01

=-0508

=0194

=-0261

SAD Tagus 200405 H Galhardas

Ex Caso ParagemEx Caso Paragem

Realizar todos os passos com uma nova amostra de treino ateacute quehellipRealizar todos os passos com uma nova amostra de treino ateacute quehellip

((casos de paragemcasos de paragem)) Todos os Todos os ΔΔw satildeo inferiores a um valor preacute-determinadow satildeo inferiores a um valor preacute-determinado A percentagem de amostras mal classificadas na ultima iteraccedilatildeo eacute abaixo A percentagem de amostras mal classificadas na ultima iteraccedilatildeo eacute abaixo

de determinado valorde determinado valor Foi atingido um nuacutemero maacuteximo de iteraccedilotildeesFoi atingido um nuacutemero maacuteximo de iteraccedilotildees

Uma iteraccedilatildeo eacute o treino da rede com todas as amostras existentes uma vez

Noacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

1

055

052

0

1

033

θθ =0194

θθ =-0408

θθ =0218

=0192

=-0138

=-0306

=04

=01

=-0508

=0194

=-0261

SAD Tagus 200405 H Galhardas

FinalmentehellipFinalmentehellip Uma vez terminado o treino da RedehellipUma vez terminado o treino da Redehellip

Esta deve ser validada atraveacutes de um conjunto de dados de teste

Uma vez validada a rede pode ser utilizada para obter valores desconhecidos

SAD Tagus 200405 H Galhardas

BibliografiaBibliografia Data Mining Concepts and TechniquesData Mining Concepts and Techniques J J

Han amp M Kamber Morgan Kaufmann 2001 Han amp M Kamber Morgan Kaufmann 2001 (Cap 7)(Cap 7)

Machine Learning Tom Mitchell McGraw Machine Learning Tom Mitchell McGraw 1997 (Cap 4)1997 (Cap 4)

Trabalho de Investigaccedilatildeo de SAD0304 de Trabalho de Investigaccedilatildeo de SAD0304 de Pedro Canteiro sobre Redes NeuronaisPedro Canteiro sobre Redes Neuronais

Princiacutepios Essenciais do Data Mining Seacutergio Princiacutepios Essenciais do Data Mining Seacutergio Navega Navega httphttpwwwintelliwisecomwwwintelliwisecomsnavegasnavega

  • Slide 1
  • Biological Neural Networks
  • Um neuroacutenio
  • Slide 4
  • Um Perceptratildeo
  • Redes Neuronais - Composiccedilatildeo
  • Redes Neuronais - Tipos
  • Appropriate Problem Domains for Neural Network Learning
  • Redes Neuronais - Vantagens
  • Redes Neuronais - Desvantagens
  • Aplicaccedilatildeo de Redes Neuronais em DM
  • Slide 12
  • Passos para efectuar DM em Redes Neuronais
  • Transformaccedilatildeo de dados
  • Transformaccedilatildeo de Dados
  • Criaccedilatildeo da Rede Neuronal
  • Treino da Rede
  • Treino de Rede Neuronal - Exemplo
  • Algoritmo de Backpropagation
  • Multi-Layer neural network
  • Ex Inicializaccedilatildeo da rede
  • Ex Input Forward (Propagaccedilatildeo das entradas)
  • Ex Input Forward (caacutelculo dos Outputs)
  • Ex Backpropagate Error
  • Ex Backpropagate Error
  • Ex Actualizar valores de W
  • Ex Actualizar valores de θ
  • Ex Caso Paragem
  • Finalmentehellip
  • Bibliografia
Page 22: Redes Neuronais

SAD Tagus 200405 H Galhardas

Ex Input Forward Ex Input Forward (Propagaccedilatildeo das (Propagaccedilatildeo das entradas)entradas)Noacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

Passo 1Passo 1 Propagar o valor de input na rede Propagar o valor de input na rede

I4 = 1x02 + 0x04 + 1x(-05) ndash 04 = -07 Mesmo para I5

=02

=-02

=-03=-03

=04

=01

=-05

=02

θθ =-04

θθ =02

θθ =01

1

01

0

1

-07

SAD Tagus 200405 H Galhardas

Ex Input ForwardEx Input Forward (caacutelculo dos Outputs) (caacutelculo dos Outputs)Noacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

=02

=-02

=-03=-03

=04

=01

=-05

=02

θθ =-04

θθ =02

θθ =01

1

0550

1Passo 2Passo 2 Calcular o valor de Output Calcular o valor de Output

O4 = 1 (1 + e07) = 033 Mesmo para O5

Repetir passos 1 e 2 para Noacute 6Repetir passos 1 e 2 para Noacute 6

033

052

SAD Tagus 200405 H Galhardas

Ex Backpropagate ErrorEx Backpropagate ErrorNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

=02

=-02

=-03=-03

=04

=01

=-05

=02

θθ =-04

θθ =02

θθ =01

1

055

052

0

1

033

Passo 3Passo 3 Calcular o valor do erro no Output layer Calcular o valor do erro no Output layer

Sendo Tj o valor de Output real nesta amostra Oreal6=1 Err6 = (055)(1 ndash 055)(1 ndash 055) = 01311

Err6 = 01311

SAD Tagus 200405 H Galhardas

Ex Backpropagate ErrorEx Backpropagate ErrorNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

=02

=-02

=-03=-03

=04

=01

=-05

=02

θθ =-04

θθ =02

θθ =01

1

055

052

0

1

033

Err6 = 01311

Passo 4Passo 4 Calcular o valor do erro na Hidden layer Calcular o valor do erro na Hidden layer

Natildeo podemos usar o valor real pois os valores do hidden layer satildeo desconhecidos

Err4 = (033)(1 ndash 033)(01311)(-03) = -00087 Mesmo para Err5

Err5 = -00065

Err4 = -0087

SAD Tagus 200405 H Galhardas

Ex Actualizar valores de WEx Actualizar valores de WNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

θθ =-04

θθ =02

θθ =01

1

055

052

0

1

033

Passo 5Passo 5 Recalcular os valores de w Recalcular os valores de w

ℓ - constante de learning rate com valor entre 0 e 1 (neste exemplo ℓ=09) Δw46 = (09)(01311)(033) = 0039 W46 = w46 + Δw46 = -03 + 0039 = -0261 Mesmo para os restantes valores de w

=0180

=-0032

=-0267

=04

=01

=-052

=0233

=-0153

Err6 = 01311

Err5 = -00065

Err4 = -0087

SAD Tagus 200405 H Galhardas

Ex Actualizar valores de Ex Actualizar valores de θθNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

1

055

052

0

1

033

Passo 5Passo 5 Recalcular os valores de Recalcular os valores de θθ e

Δθ5 = (09)(-0065) = -00585 θ5 = θ5 + Δθ5 = 02 - 00585 = 0194

Mesmo para os restantes valores de θ

θθ =0194

θθ =-0408

θθ =0218

=0192

=-0138

=-0306

=04

=01

=-0508

=0194

=-0261

SAD Tagus 200405 H Galhardas

Ex Caso ParagemEx Caso Paragem

Realizar todos os passos com uma nova amostra de treino ateacute quehellipRealizar todos os passos com uma nova amostra de treino ateacute quehellip

((casos de paragemcasos de paragem)) Todos os Todos os ΔΔw satildeo inferiores a um valor preacute-determinadow satildeo inferiores a um valor preacute-determinado A percentagem de amostras mal classificadas na ultima iteraccedilatildeo eacute abaixo A percentagem de amostras mal classificadas na ultima iteraccedilatildeo eacute abaixo

de determinado valorde determinado valor Foi atingido um nuacutemero maacuteximo de iteraccedilotildeesFoi atingido um nuacutemero maacuteximo de iteraccedilotildees

Uma iteraccedilatildeo eacute o treino da rede com todas as amostras existentes uma vez

Noacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

1

055

052

0

1

033

θθ =0194

θθ =-0408

θθ =0218

=0192

=-0138

=-0306

=04

=01

=-0508

=0194

=-0261

SAD Tagus 200405 H Galhardas

FinalmentehellipFinalmentehellip Uma vez terminado o treino da RedehellipUma vez terminado o treino da Redehellip

Esta deve ser validada atraveacutes de um conjunto de dados de teste

Uma vez validada a rede pode ser utilizada para obter valores desconhecidos

SAD Tagus 200405 H Galhardas

BibliografiaBibliografia Data Mining Concepts and TechniquesData Mining Concepts and Techniques J J

Han amp M Kamber Morgan Kaufmann 2001 Han amp M Kamber Morgan Kaufmann 2001 (Cap 7)(Cap 7)

Machine Learning Tom Mitchell McGraw Machine Learning Tom Mitchell McGraw 1997 (Cap 4)1997 (Cap 4)

Trabalho de Investigaccedilatildeo de SAD0304 de Trabalho de Investigaccedilatildeo de SAD0304 de Pedro Canteiro sobre Redes NeuronaisPedro Canteiro sobre Redes Neuronais

Princiacutepios Essenciais do Data Mining Seacutergio Princiacutepios Essenciais do Data Mining Seacutergio Navega Navega httphttpwwwintelliwisecomwwwintelliwisecomsnavegasnavega

  • Slide 1
  • Biological Neural Networks
  • Um neuroacutenio
  • Slide 4
  • Um Perceptratildeo
  • Redes Neuronais - Composiccedilatildeo
  • Redes Neuronais - Tipos
  • Appropriate Problem Domains for Neural Network Learning
  • Redes Neuronais - Vantagens
  • Redes Neuronais - Desvantagens
  • Aplicaccedilatildeo de Redes Neuronais em DM
  • Slide 12
  • Passos para efectuar DM em Redes Neuronais
  • Transformaccedilatildeo de dados
  • Transformaccedilatildeo de Dados
  • Criaccedilatildeo da Rede Neuronal
  • Treino da Rede
  • Treino de Rede Neuronal - Exemplo
  • Algoritmo de Backpropagation
  • Multi-Layer neural network
  • Ex Inicializaccedilatildeo da rede
  • Ex Input Forward (Propagaccedilatildeo das entradas)
  • Ex Input Forward (caacutelculo dos Outputs)
  • Ex Backpropagate Error
  • Ex Backpropagate Error
  • Ex Actualizar valores de W
  • Ex Actualizar valores de θ
  • Ex Caso Paragem
  • Finalmentehellip
  • Bibliografia
Page 23: Redes Neuronais

SAD Tagus 200405 H Galhardas

Ex Input ForwardEx Input Forward (caacutelculo dos Outputs) (caacutelculo dos Outputs)Noacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

=02

=-02

=-03=-03

=04

=01

=-05

=02

θθ =-04

θθ =02

θθ =01

1

0550

1Passo 2Passo 2 Calcular o valor de Output Calcular o valor de Output

O4 = 1 (1 + e07) = 033 Mesmo para O5

Repetir passos 1 e 2 para Noacute 6Repetir passos 1 e 2 para Noacute 6

033

052

SAD Tagus 200405 H Galhardas

Ex Backpropagate ErrorEx Backpropagate ErrorNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

=02

=-02

=-03=-03

=04

=01

=-05

=02

θθ =-04

θθ =02

θθ =01

1

055

052

0

1

033

Passo 3Passo 3 Calcular o valor do erro no Output layer Calcular o valor do erro no Output layer

Sendo Tj o valor de Output real nesta amostra Oreal6=1 Err6 = (055)(1 ndash 055)(1 ndash 055) = 01311

Err6 = 01311

SAD Tagus 200405 H Galhardas

Ex Backpropagate ErrorEx Backpropagate ErrorNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

=02

=-02

=-03=-03

=04

=01

=-05

=02

θθ =-04

θθ =02

θθ =01

1

055

052

0

1

033

Err6 = 01311

Passo 4Passo 4 Calcular o valor do erro na Hidden layer Calcular o valor do erro na Hidden layer

Natildeo podemos usar o valor real pois os valores do hidden layer satildeo desconhecidos

Err4 = (033)(1 ndash 033)(01311)(-03) = -00087 Mesmo para Err5

Err5 = -00065

Err4 = -0087

SAD Tagus 200405 H Galhardas

Ex Actualizar valores de WEx Actualizar valores de WNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

θθ =-04

θθ =02

θθ =01

1

055

052

0

1

033

Passo 5Passo 5 Recalcular os valores de w Recalcular os valores de w

ℓ - constante de learning rate com valor entre 0 e 1 (neste exemplo ℓ=09) Δw46 = (09)(01311)(033) = 0039 W46 = w46 + Δw46 = -03 + 0039 = -0261 Mesmo para os restantes valores de w

=0180

=-0032

=-0267

=04

=01

=-052

=0233

=-0153

Err6 = 01311

Err5 = -00065

Err4 = -0087

SAD Tagus 200405 H Galhardas

Ex Actualizar valores de Ex Actualizar valores de θθNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

1

055

052

0

1

033

Passo 5Passo 5 Recalcular os valores de Recalcular os valores de θθ e

Δθ5 = (09)(-0065) = -00585 θ5 = θ5 + Δθ5 = 02 - 00585 = 0194

Mesmo para os restantes valores de θ

θθ =0194

θθ =-0408

θθ =0218

=0192

=-0138

=-0306

=04

=01

=-0508

=0194

=-0261

SAD Tagus 200405 H Galhardas

Ex Caso ParagemEx Caso Paragem

Realizar todos os passos com uma nova amostra de treino ateacute quehellipRealizar todos os passos com uma nova amostra de treino ateacute quehellip

((casos de paragemcasos de paragem)) Todos os Todos os ΔΔw satildeo inferiores a um valor preacute-determinadow satildeo inferiores a um valor preacute-determinado A percentagem de amostras mal classificadas na ultima iteraccedilatildeo eacute abaixo A percentagem de amostras mal classificadas na ultima iteraccedilatildeo eacute abaixo

de determinado valorde determinado valor Foi atingido um nuacutemero maacuteximo de iteraccedilotildeesFoi atingido um nuacutemero maacuteximo de iteraccedilotildees

Uma iteraccedilatildeo eacute o treino da rede com todas as amostras existentes uma vez

Noacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

1

055

052

0

1

033

θθ =0194

θθ =-0408

θθ =0218

=0192

=-0138

=-0306

=04

=01

=-0508

=0194

=-0261

SAD Tagus 200405 H Galhardas

FinalmentehellipFinalmentehellip Uma vez terminado o treino da RedehellipUma vez terminado o treino da Redehellip

Esta deve ser validada atraveacutes de um conjunto de dados de teste

Uma vez validada a rede pode ser utilizada para obter valores desconhecidos

SAD Tagus 200405 H Galhardas

BibliografiaBibliografia Data Mining Concepts and TechniquesData Mining Concepts and Techniques J J

Han amp M Kamber Morgan Kaufmann 2001 Han amp M Kamber Morgan Kaufmann 2001 (Cap 7)(Cap 7)

Machine Learning Tom Mitchell McGraw Machine Learning Tom Mitchell McGraw 1997 (Cap 4)1997 (Cap 4)

Trabalho de Investigaccedilatildeo de SAD0304 de Trabalho de Investigaccedilatildeo de SAD0304 de Pedro Canteiro sobre Redes NeuronaisPedro Canteiro sobre Redes Neuronais

Princiacutepios Essenciais do Data Mining Seacutergio Princiacutepios Essenciais do Data Mining Seacutergio Navega Navega httphttpwwwintelliwisecomwwwintelliwisecomsnavegasnavega

  • Slide 1
  • Biological Neural Networks
  • Um neuroacutenio
  • Slide 4
  • Um Perceptratildeo
  • Redes Neuronais - Composiccedilatildeo
  • Redes Neuronais - Tipos
  • Appropriate Problem Domains for Neural Network Learning
  • Redes Neuronais - Vantagens
  • Redes Neuronais - Desvantagens
  • Aplicaccedilatildeo de Redes Neuronais em DM
  • Slide 12
  • Passos para efectuar DM em Redes Neuronais
  • Transformaccedilatildeo de dados
  • Transformaccedilatildeo de Dados
  • Criaccedilatildeo da Rede Neuronal
  • Treino da Rede
  • Treino de Rede Neuronal - Exemplo
  • Algoritmo de Backpropagation
  • Multi-Layer neural network
  • Ex Inicializaccedilatildeo da rede
  • Ex Input Forward (Propagaccedilatildeo das entradas)
  • Ex Input Forward (caacutelculo dos Outputs)
  • Ex Backpropagate Error
  • Ex Backpropagate Error
  • Ex Actualizar valores de W
  • Ex Actualizar valores de θ
  • Ex Caso Paragem
  • Finalmentehellip
  • Bibliografia
Page 24: Redes Neuronais

SAD Tagus 200405 H Galhardas

Ex Backpropagate ErrorEx Backpropagate ErrorNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

=02

=-02

=-03=-03

=04

=01

=-05

=02

θθ =-04

θθ =02

θθ =01

1

055

052

0

1

033

Passo 3Passo 3 Calcular o valor do erro no Output layer Calcular o valor do erro no Output layer

Sendo Tj o valor de Output real nesta amostra Oreal6=1 Err6 = (055)(1 ndash 055)(1 ndash 055) = 01311

Err6 = 01311

SAD Tagus 200405 H Galhardas

Ex Backpropagate ErrorEx Backpropagate ErrorNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

=02

=-02

=-03=-03

=04

=01

=-05

=02

θθ =-04

θθ =02

θθ =01

1

055

052

0

1

033

Err6 = 01311

Passo 4Passo 4 Calcular o valor do erro na Hidden layer Calcular o valor do erro na Hidden layer

Natildeo podemos usar o valor real pois os valores do hidden layer satildeo desconhecidos

Err4 = (033)(1 ndash 033)(01311)(-03) = -00087 Mesmo para Err5

Err5 = -00065

Err4 = -0087

SAD Tagus 200405 H Galhardas

Ex Actualizar valores de WEx Actualizar valores de WNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

θθ =-04

θθ =02

θθ =01

1

055

052

0

1

033

Passo 5Passo 5 Recalcular os valores de w Recalcular os valores de w

ℓ - constante de learning rate com valor entre 0 e 1 (neste exemplo ℓ=09) Δw46 = (09)(01311)(033) = 0039 W46 = w46 + Δw46 = -03 + 0039 = -0261 Mesmo para os restantes valores de w

=0180

=-0032

=-0267

=04

=01

=-052

=0233

=-0153

Err6 = 01311

Err5 = -00065

Err4 = -0087

SAD Tagus 200405 H Galhardas

Ex Actualizar valores de Ex Actualizar valores de θθNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

1

055

052

0

1

033

Passo 5Passo 5 Recalcular os valores de Recalcular os valores de θθ e

Δθ5 = (09)(-0065) = -00585 θ5 = θ5 + Δθ5 = 02 - 00585 = 0194

Mesmo para os restantes valores de θ

θθ =0194

θθ =-0408

θθ =0218

=0192

=-0138

=-0306

=04

=01

=-0508

=0194

=-0261

SAD Tagus 200405 H Galhardas

Ex Caso ParagemEx Caso Paragem

Realizar todos os passos com uma nova amostra de treino ateacute quehellipRealizar todos os passos com uma nova amostra de treino ateacute quehellip

((casos de paragemcasos de paragem)) Todos os Todos os ΔΔw satildeo inferiores a um valor preacute-determinadow satildeo inferiores a um valor preacute-determinado A percentagem de amostras mal classificadas na ultima iteraccedilatildeo eacute abaixo A percentagem de amostras mal classificadas na ultima iteraccedilatildeo eacute abaixo

de determinado valorde determinado valor Foi atingido um nuacutemero maacuteximo de iteraccedilotildeesFoi atingido um nuacutemero maacuteximo de iteraccedilotildees

Uma iteraccedilatildeo eacute o treino da rede com todas as amostras existentes uma vez

Noacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

1

055

052

0

1

033

θθ =0194

θθ =-0408

θθ =0218

=0192

=-0138

=-0306

=04

=01

=-0508

=0194

=-0261

SAD Tagus 200405 H Galhardas

FinalmentehellipFinalmentehellip Uma vez terminado o treino da RedehellipUma vez terminado o treino da Redehellip

Esta deve ser validada atraveacutes de um conjunto de dados de teste

Uma vez validada a rede pode ser utilizada para obter valores desconhecidos

SAD Tagus 200405 H Galhardas

BibliografiaBibliografia Data Mining Concepts and TechniquesData Mining Concepts and Techniques J J

Han amp M Kamber Morgan Kaufmann 2001 Han amp M Kamber Morgan Kaufmann 2001 (Cap 7)(Cap 7)

Machine Learning Tom Mitchell McGraw Machine Learning Tom Mitchell McGraw 1997 (Cap 4)1997 (Cap 4)

Trabalho de Investigaccedilatildeo de SAD0304 de Trabalho de Investigaccedilatildeo de SAD0304 de Pedro Canteiro sobre Redes NeuronaisPedro Canteiro sobre Redes Neuronais

Princiacutepios Essenciais do Data Mining Seacutergio Princiacutepios Essenciais do Data Mining Seacutergio Navega Navega httphttpwwwintelliwisecomwwwintelliwisecomsnavegasnavega

  • Slide 1
  • Biological Neural Networks
  • Um neuroacutenio
  • Slide 4
  • Um Perceptratildeo
  • Redes Neuronais - Composiccedilatildeo
  • Redes Neuronais - Tipos
  • Appropriate Problem Domains for Neural Network Learning
  • Redes Neuronais - Vantagens
  • Redes Neuronais - Desvantagens
  • Aplicaccedilatildeo de Redes Neuronais em DM
  • Slide 12
  • Passos para efectuar DM em Redes Neuronais
  • Transformaccedilatildeo de dados
  • Transformaccedilatildeo de Dados
  • Criaccedilatildeo da Rede Neuronal
  • Treino da Rede
  • Treino de Rede Neuronal - Exemplo
  • Algoritmo de Backpropagation
  • Multi-Layer neural network
  • Ex Inicializaccedilatildeo da rede
  • Ex Input Forward (Propagaccedilatildeo das entradas)
  • Ex Input Forward (caacutelculo dos Outputs)
  • Ex Backpropagate Error
  • Ex Backpropagate Error
  • Ex Actualizar valores de W
  • Ex Actualizar valores de θ
  • Ex Caso Paragem
  • Finalmentehellip
  • Bibliografia
Page 25: Redes Neuronais

SAD Tagus 200405 H Galhardas

Ex Backpropagate ErrorEx Backpropagate ErrorNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

=02

=-02

=-03=-03

=04

=01

=-05

=02

θθ =-04

θθ =02

θθ =01

1

055

052

0

1

033

Err6 = 01311

Passo 4Passo 4 Calcular o valor do erro na Hidden layer Calcular o valor do erro na Hidden layer

Natildeo podemos usar o valor real pois os valores do hidden layer satildeo desconhecidos

Err4 = (033)(1 ndash 033)(01311)(-03) = -00087 Mesmo para Err5

Err5 = -00065

Err4 = -0087

SAD Tagus 200405 H Galhardas

Ex Actualizar valores de WEx Actualizar valores de WNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

θθ =-04

θθ =02

θθ =01

1

055

052

0

1

033

Passo 5Passo 5 Recalcular os valores de w Recalcular os valores de w

ℓ - constante de learning rate com valor entre 0 e 1 (neste exemplo ℓ=09) Δw46 = (09)(01311)(033) = 0039 W46 = w46 + Δw46 = -03 + 0039 = -0261 Mesmo para os restantes valores de w

=0180

=-0032

=-0267

=04

=01

=-052

=0233

=-0153

Err6 = 01311

Err5 = -00065

Err4 = -0087

SAD Tagus 200405 H Galhardas

Ex Actualizar valores de Ex Actualizar valores de θθNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

1

055

052

0

1

033

Passo 5Passo 5 Recalcular os valores de Recalcular os valores de θθ e

Δθ5 = (09)(-0065) = -00585 θ5 = θ5 + Δθ5 = 02 - 00585 = 0194

Mesmo para os restantes valores de θ

θθ =0194

θθ =-0408

θθ =0218

=0192

=-0138

=-0306

=04

=01

=-0508

=0194

=-0261

SAD Tagus 200405 H Galhardas

Ex Caso ParagemEx Caso Paragem

Realizar todos os passos com uma nova amostra de treino ateacute quehellipRealizar todos os passos com uma nova amostra de treino ateacute quehellip

((casos de paragemcasos de paragem)) Todos os Todos os ΔΔw satildeo inferiores a um valor preacute-determinadow satildeo inferiores a um valor preacute-determinado A percentagem de amostras mal classificadas na ultima iteraccedilatildeo eacute abaixo A percentagem de amostras mal classificadas na ultima iteraccedilatildeo eacute abaixo

de determinado valorde determinado valor Foi atingido um nuacutemero maacuteximo de iteraccedilotildeesFoi atingido um nuacutemero maacuteximo de iteraccedilotildees

Uma iteraccedilatildeo eacute o treino da rede com todas as amostras existentes uma vez

Noacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

1

055

052

0

1

033

θθ =0194

θθ =-0408

θθ =0218

=0192

=-0138

=-0306

=04

=01

=-0508

=0194

=-0261

SAD Tagus 200405 H Galhardas

FinalmentehellipFinalmentehellip Uma vez terminado o treino da RedehellipUma vez terminado o treino da Redehellip

Esta deve ser validada atraveacutes de um conjunto de dados de teste

Uma vez validada a rede pode ser utilizada para obter valores desconhecidos

SAD Tagus 200405 H Galhardas

BibliografiaBibliografia Data Mining Concepts and TechniquesData Mining Concepts and Techniques J J

Han amp M Kamber Morgan Kaufmann 2001 Han amp M Kamber Morgan Kaufmann 2001 (Cap 7)(Cap 7)

Machine Learning Tom Mitchell McGraw Machine Learning Tom Mitchell McGraw 1997 (Cap 4)1997 (Cap 4)

Trabalho de Investigaccedilatildeo de SAD0304 de Trabalho de Investigaccedilatildeo de SAD0304 de Pedro Canteiro sobre Redes NeuronaisPedro Canteiro sobre Redes Neuronais

Princiacutepios Essenciais do Data Mining Seacutergio Princiacutepios Essenciais do Data Mining Seacutergio Navega Navega httphttpwwwintelliwisecomwwwintelliwisecomsnavegasnavega

  • Slide 1
  • Biological Neural Networks
  • Um neuroacutenio
  • Slide 4
  • Um Perceptratildeo
  • Redes Neuronais - Composiccedilatildeo
  • Redes Neuronais - Tipos
  • Appropriate Problem Domains for Neural Network Learning
  • Redes Neuronais - Vantagens
  • Redes Neuronais - Desvantagens
  • Aplicaccedilatildeo de Redes Neuronais em DM
  • Slide 12
  • Passos para efectuar DM em Redes Neuronais
  • Transformaccedilatildeo de dados
  • Transformaccedilatildeo de Dados
  • Criaccedilatildeo da Rede Neuronal
  • Treino da Rede
  • Treino de Rede Neuronal - Exemplo
  • Algoritmo de Backpropagation
  • Multi-Layer neural network
  • Ex Inicializaccedilatildeo da rede
  • Ex Input Forward (Propagaccedilatildeo das entradas)
  • Ex Input Forward (caacutelculo dos Outputs)
  • Ex Backpropagate Error
  • Ex Backpropagate Error
  • Ex Actualizar valores de W
  • Ex Actualizar valores de θ
  • Ex Caso Paragem
  • Finalmentehellip
  • Bibliografia
Page 26: Redes Neuronais

SAD Tagus 200405 H Galhardas

Ex Actualizar valores de WEx Actualizar valores de WNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

θθ =-04

θθ =02

θθ =01

1

055

052

0

1

033

Passo 5Passo 5 Recalcular os valores de w Recalcular os valores de w

ℓ - constante de learning rate com valor entre 0 e 1 (neste exemplo ℓ=09) Δw46 = (09)(01311)(033) = 0039 W46 = w46 + Δw46 = -03 + 0039 = -0261 Mesmo para os restantes valores de w

=0180

=-0032

=-0267

=04

=01

=-052

=0233

=-0153

Err6 = 01311

Err5 = -00065

Err4 = -0087

SAD Tagus 200405 H Galhardas

Ex Actualizar valores de Ex Actualizar valores de θθNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

1

055

052

0

1

033

Passo 5Passo 5 Recalcular os valores de Recalcular os valores de θθ e

Δθ5 = (09)(-0065) = -00585 θ5 = θ5 + Δθ5 = 02 - 00585 = 0194

Mesmo para os restantes valores de θ

θθ =0194

θθ =-0408

θθ =0218

=0192

=-0138

=-0306

=04

=01

=-0508

=0194

=-0261

SAD Tagus 200405 H Galhardas

Ex Caso ParagemEx Caso Paragem

Realizar todos os passos com uma nova amostra de treino ateacute quehellipRealizar todos os passos com uma nova amostra de treino ateacute quehellip

((casos de paragemcasos de paragem)) Todos os Todos os ΔΔw satildeo inferiores a um valor preacute-determinadow satildeo inferiores a um valor preacute-determinado A percentagem de amostras mal classificadas na ultima iteraccedilatildeo eacute abaixo A percentagem de amostras mal classificadas na ultima iteraccedilatildeo eacute abaixo

de determinado valorde determinado valor Foi atingido um nuacutemero maacuteximo de iteraccedilotildeesFoi atingido um nuacutemero maacuteximo de iteraccedilotildees

Uma iteraccedilatildeo eacute o treino da rede com todas as amostras existentes uma vez

Noacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

1

055

052

0

1

033

θθ =0194

θθ =-0408

θθ =0218

=0192

=-0138

=-0306

=04

=01

=-0508

=0194

=-0261

SAD Tagus 200405 H Galhardas

FinalmentehellipFinalmentehellip Uma vez terminado o treino da RedehellipUma vez terminado o treino da Redehellip

Esta deve ser validada atraveacutes de um conjunto de dados de teste

Uma vez validada a rede pode ser utilizada para obter valores desconhecidos

SAD Tagus 200405 H Galhardas

BibliografiaBibliografia Data Mining Concepts and TechniquesData Mining Concepts and Techniques J J

Han amp M Kamber Morgan Kaufmann 2001 Han amp M Kamber Morgan Kaufmann 2001 (Cap 7)(Cap 7)

Machine Learning Tom Mitchell McGraw Machine Learning Tom Mitchell McGraw 1997 (Cap 4)1997 (Cap 4)

Trabalho de Investigaccedilatildeo de SAD0304 de Trabalho de Investigaccedilatildeo de SAD0304 de Pedro Canteiro sobre Redes NeuronaisPedro Canteiro sobre Redes Neuronais

Princiacutepios Essenciais do Data Mining Seacutergio Princiacutepios Essenciais do Data Mining Seacutergio Navega Navega httphttpwwwintelliwisecomwwwintelliwisecomsnavegasnavega

  • Slide 1
  • Biological Neural Networks
  • Um neuroacutenio
  • Slide 4
  • Um Perceptratildeo
  • Redes Neuronais - Composiccedilatildeo
  • Redes Neuronais - Tipos
  • Appropriate Problem Domains for Neural Network Learning
  • Redes Neuronais - Vantagens
  • Redes Neuronais - Desvantagens
  • Aplicaccedilatildeo de Redes Neuronais em DM
  • Slide 12
  • Passos para efectuar DM em Redes Neuronais
  • Transformaccedilatildeo de dados
  • Transformaccedilatildeo de Dados
  • Criaccedilatildeo da Rede Neuronal
  • Treino da Rede
  • Treino de Rede Neuronal - Exemplo
  • Algoritmo de Backpropagation
  • Multi-Layer neural network
  • Ex Inicializaccedilatildeo da rede
  • Ex Input Forward (Propagaccedilatildeo das entradas)
  • Ex Input Forward (caacutelculo dos Outputs)
  • Ex Backpropagate Error
  • Ex Backpropagate Error
  • Ex Actualizar valores de W
  • Ex Actualizar valores de θ
  • Ex Caso Paragem
  • Finalmentehellip
  • Bibliografia
Page 27: Redes Neuronais

SAD Tagus 200405 H Galhardas

Ex Actualizar valores de Ex Actualizar valores de θθNoacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

1

055

052

0

1

033

Passo 5Passo 5 Recalcular os valores de Recalcular os valores de θθ e

Δθ5 = (09)(-0065) = -00585 θ5 = θ5 + Δθ5 = 02 - 00585 = 0194

Mesmo para os restantes valores de θ

θθ =0194

θθ =-0408

θθ =0218

=0192

=-0138

=-0306

=04

=01

=-0508

=0194

=-0261

SAD Tagus 200405 H Galhardas

Ex Caso ParagemEx Caso Paragem

Realizar todos os passos com uma nova amostra de treino ateacute quehellipRealizar todos os passos com uma nova amostra de treino ateacute quehellip

((casos de paragemcasos de paragem)) Todos os Todos os ΔΔw satildeo inferiores a um valor preacute-determinadow satildeo inferiores a um valor preacute-determinado A percentagem de amostras mal classificadas na ultima iteraccedilatildeo eacute abaixo A percentagem de amostras mal classificadas na ultima iteraccedilatildeo eacute abaixo

de determinado valorde determinado valor Foi atingido um nuacutemero maacuteximo de iteraccedilotildeesFoi atingido um nuacutemero maacuteximo de iteraccedilotildees

Uma iteraccedilatildeo eacute o treino da rede com todas as amostras existentes uma vez

Noacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

1

055

052

0

1

033

θθ =0194

θθ =-0408

θθ =0218

=0192

=-0138

=-0306

=04

=01

=-0508

=0194

=-0261

SAD Tagus 200405 H Galhardas

FinalmentehellipFinalmentehellip Uma vez terminado o treino da RedehellipUma vez terminado o treino da Redehellip

Esta deve ser validada atraveacutes de um conjunto de dados de teste

Uma vez validada a rede pode ser utilizada para obter valores desconhecidos

SAD Tagus 200405 H Galhardas

BibliografiaBibliografia Data Mining Concepts and TechniquesData Mining Concepts and Techniques J J

Han amp M Kamber Morgan Kaufmann 2001 Han amp M Kamber Morgan Kaufmann 2001 (Cap 7)(Cap 7)

Machine Learning Tom Mitchell McGraw Machine Learning Tom Mitchell McGraw 1997 (Cap 4)1997 (Cap 4)

Trabalho de Investigaccedilatildeo de SAD0304 de Trabalho de Investigaccedilatildeo de SAD0304 de Pedro Canteiro sobre Redes NeuronaisPedro Canteiro sobre Redes Neuronais

Princiacutepios Essenciais do Data Mining Seacutergio Princiacutepios Essenciais do Data Mining Seacutergio Navega Navega httphttpwwwintelliwisecomwwwintelliwisecomsnavegasnavega

  • Slide 1
  • Biological Neural Networks
  • Um neuroacutenio
  • Slide 4
  • Um Perceptratildeo
  • Redes Neuronais - Composiccedilatildeo
  • Redes Neuronais - Tipos
  • Appropriate Problem Domains for Neural Network Learning
  • Redes Neuronais - Vantagens
  • Redes Neuronais - Desvantagens
  • Aplicaccedilatildeo de Redes Neuronais em DM
  • Slide 12
  • Passos para efectuar DM em Redes Neuronais
  • Transformaccedilatildeo de dados
  • Transformaccedilatildeo de Dados
  • Criaccedilatildeo da Rede Neuronal
  • Treino da Rede
  • Treino de Rede Neuronal - Exemplo
  • Algoritmo de Backpropagation
  • Multi-Layer neural network
  • Ex Inicializaccedilatildeo da rede
  • Ex Input Forward (Propagaccedilatildeo das entradas)
  • Ex Input Forward (caacutelculo dos Outputs)
  • Ex Backpropagate Error
  • Ex Backpropagate Error
  • Ex Actualizar valores de W
  • Ex Actualizar valores de θ
  • Ex Caso Paragem
  • Finalmentehellip
  • Bibliografia
Page 28: Redes Neuronais

SAD Tagus 200405 H Galhardas

Ex Caso ParagemEx Caso Paragem

Realizar todos os passos com uma nova amostra de treino ateacute quehellipRealizar todos os passos com uma nova amostra de treino ateacute quehellip

((casos de paragemcasos de paragem)) Todos os Todos os ΔΔw satildeo inferiores a um valor preacute-determinadow satildeo inferiores a um valor preacute-determinado A percentagem de amostras mal classificadas na ultima iteraccedilatildeo eacute abaixo A percentagem de amostras mal classificadas na ultima iteraccedilatildeo eacute abaixo

de determinado valorde determinado valor Foi atingido um nuacutemero maacuteximo de iteraccedilotildeesFoi atingido um nuacutemero maacuteximo de iteraccedilotildees

Uma iteraccedilatildeo eacute o treino da rede com todas as amostras existentes uma vez

Noacute 1

Noacute 2

Noacute 3

Noacute 4

Noacute 5

Noacute 6

w14

w35

w34

w25

w24

w15

w56

w46

1

055

052

0

1

033

θθ =0194

θθ =-0408

θθ =0218

=0192

=-0138

=-0306

=04

=01

=-0508

=0194

=-0261

SAD Tagus 200405 H Galhardas

FinalmentehellipFinalmentehellip Uma vez terminado o treino da RedehellipUma vez terminado o treino da Redehellip

Esta deve ser validada atraveacutes de um conjunto de dados de teste

Uma vez validada a rede pode ser utilizada para obter valores desconhecidos

SAD Tagus 200405 H Galhardas

BibliografiaBibliografia Data Mining Concepts and TechniquesData Mining Concepts and Techniques J J

Han amp M Kamber Morgan Kaufmann 2001 Han amp M Kamber Morgan Kaufmann 2001 (Cap 7)(Cap 7)

Machine Learning Tom Mitchell McGraw Machine Learning Tom Mitchell McGraw 1997 (Cap 4)1997 (Cap 4)

Trabalho de Investigaccedilatildeo de SAD0304 de Trabalho de Investigaccedilatildeo de SAD0304 de Pedro Canteiro sobre Redes NeuronaisPedro Canteiro sobre Redes Neuronais

Princiacutepios Essenciais do Data Mining Seacutergio Princiacutepios Essenciais do Data Mining Seacutergio Navega Navega httphttpwwwintelliwisecomwwwintelliwisecomsnavegasnavega

  • Slide 1
  • Biological Neural Networks
  • Um neuroacutenio
  • Slide 4
  • Um Perceptratildeo
  • Redes Neuronais - Composiccedilatildeo
  • Redes Neuronais - Tipos
  • Appropriate Problem Domains for Neural Network Learning
  • Redes Neuronais - Vantagens
  • Redes Neuronais - Desvantagens
  • Aplicaccedilatildeo de Redes Neuronais em DM
  • Slide 12
  • Passos para efectuar DM em Redes Neuronais
  • Transformaccedilatildeo de dados
  • Transformaccedilatildeo de Dados
  • Criaccedilatildeo da Rede Neuronal
  • Treino da Rede
  • Treino de Rede Neuronal - Exemplo
  • Algoritmo de Backpropagation
  • Multi-Layer neural network
  • Ex Inicializaccedilatildeo da rede
  • Ex Input Forward (Propagaccedilatildeo das entradas)
  • Ex Input Forward (caacutelculo dos Outputs)
  • Ex Backpropagate Error
  • Ex Backpropagate Error
  • Ex Actualizar valores de W
  • Ex Actualizar valores de θ
  • Ex Caso Paragem
  • Finalmentehellip
  • Bibliografia
Page 29: Redes Neuronais

SAD Tagus 200405 H Galhardas

FinalmentehellipFinalmentehellip Uma vez terminado o treino da RedehellipUma vez terminado o treino da Redehellip

Esta deve ser validada atraveacutes de um conjunto de dados de teste

Uma vez validada a rede pode ser utilizada para obter valores desconhecidos

SAD Tagus 200405 H Galhardas

BibliografiaBibliografia Data Mining Concepts and TechniquesData Mining Concepts and Techniques J J

Han amp M Kamber Morgan Kaufmann 2001 Han amp M Kamber Morgan Kaufmann 2001 (Cap 7)(Cap 7)

Machine Learning Tom Mitchell McGraw Machine Learning Tom Mitchell McGraw 1997 (Cap 4)1997 (Cap 4)

Trabalho de Investigaccedilatildeo de SAD0304 de Trabalho de Investigaccedilatildeo de SAD0304 de Pedro Canteiro sobre Redes NeuronaisPedro Canteiro sobre Redes Neuronais

Princiacutepios Essenciais do Data Mining Seacutergio Princiacutepios Essenciais do Data Mining Seacutergio Navega Navega httphttpwwwintelliwisecomwwwintelliwisecomsnavegasnavega

  • Slide 1
  • Biological Neural Networks
  • Um neuroacutenio
  • Slide 4
  • Um Perceptratildeo
  • Redes Neuronais - Composiccedilatildeo
  • Redes Neuronais - Tipos
  • Appropriate Problem Domains for Neural Network Learning
  • Redes Neuronais - Vantagens
  • Redes Neuronais - Desvantagens
  • Aplicaccedilatildeo de Redes Neuronais em DM
  • Slide 12
  • Passos para efectuar DM em Redes Neuronais
  • Transformaccedilatildeo de dados
  • Transformaccedilatildeo de Dados
  • Criaccedilatildeo da Rede Neuronal
  • Treino da Rede
  • Treino de Rede Neuronal - Exemplo
  • Algoritmo de Backpropagation
  • Multi-Layer neural network
  • Ex Inicializaccedilatildeo da rede
  • Ex Input Forward (Propagaccedilatildeo das entradas)
  • Ex Input Forward (caacutelculo dos Outputs)
  • Ex Backpropagate Error
  • Ex Backpropagate Error
  • Ex Actualizar valores de W
  • Ex Actualizar valores de θ
  • Ex Caso Paragem
  • Finalmentehellip
  • Bibliografia
Page 30: Redes Neuronais

SAD Tagus 200405 H Galhardas

BibliografiaBibliografia Data Mining Concepts and TechniquesData Mining Concepts and Techniques J J

Han amp M Kamber Morgan Kaufmann 2001 Han amp M Kamber Morgan Kaufmann 2001 (Cap 7)(Cap 7)

Machine Learning Tom Mitchell McGraw Machine Learning Tom Mitchell McGraw 1997 (Cap 4)1997 (Cap 4)

Trabalho de Investigaccedilatildeo de SAD0304 de Trabalho de Investigaccedilatildeo de SAD0304 de Pedro Canteiro sobre Redes NeuronaisPedro Canteiro sobre Redes Neuronais

Princiacutepios Essenciais do Data Mining Seacutergio Princiacutepios Essenciais do Data Mining Seacutergio Navega Navega httphttpwwwintelliwisecomwwwintelliwisecomsnavegasnavega

  • Slide 1
  • Biological Neural Networks
  • Um neuroacutenio
  • Slide 4
  • Um Perceptratildeo
  • Redes Neuronais - Composiccedilatildeo
  • Redes Neuronais - Tipos
  • Appropriate Problem Domains for Neural Network Learning
  • Redes Neuronais - Vantagens
  • Redes Neuronais - Desvantagens
  • Aplicaccedilatildeo de Redes Neuronais em DM
  • Slide 12
  • Passos para efectuar DM em Redes Neuronais
  • Transformaccedilatildeo de dados
  • Transformaccedilatildeo de Dados
  • Criaccedilatildeo da Rede Neuronal
  • Treino da Rede
  • Treino de Rede Neuronal - Exemplo
  • Algoritmo de Backpropagation
  • Multi-Layer neural network
  • Ex Inicializaccedilatildeo da rede
  • Ex Input Forward (Propagaccedilatildeo das entradas)
  • Ex Input Forward (caacutelculo dos Outputs)
  • Ex Backpropagate Error
  • Ex Backpropagate Error
  • Ex Actualizar valores de W
  • Ex Actualizar valores de θ
  • Ex Caso Paragem
  • Finalmentehellip
  • Bibliografia

Recommended