• Aucun résultat trouvé

A Simple Example

Dans le document TCP/IP Illustrated,Volume 1 (Page 168-172)

UDP: User Datagram Protocol

11.4 A Simple Example

A escolha do número de neurónios a introduzir na camada intermédia teve em conta a expressão [3.43], para encontrar o número ideal de neurónios, tendo-se verificado que a utilização de 6 neurónios produzia uma percentagem de erro inferior à que resultava de considerar 4, 5 ou 7 neurónios. No gráfico da Fig. 5.1 pode-se analisar a variação do erro proveniente do comportamento dos neurónios na camada intermédia, em função do número de neurónios (exemplo do arco 23).

50 OJ 45 o i"'40 ■? 35 O 30 25 ■j 20 O 1b ■y TJ W 5

4 neurónios 5 neurónios 6 neurónios 7 neurónios

Fig. 5.1 - Percentagem de erro na classificação em função do número de neurónios utilizado na camada intermédia

A escolha da melhor taxa de aprendizagem a utilizar para um dado problema nem sempre é uma tarefa fácil. A taxa de aprendizagem não deve ser muito grande pois provocará instabilidade na

aprendizagem e se for muito pequena a aprendizagem será muito lenta. A Fig. 5.2 representa os vários valores da taxa de aprendizagem que foram utilizados no teste da rede neuronal.

50.0 45 0 o 40.0 m -o 35.0 n i * MUI L> ?5 0 II) n> O ?nn m O 15.0 (D 10.0 # b.U 0.0 lr=0.2 lr=0,3 !r=0,4 lr=0.5

Fig. 5.2 - Percentagem de erro obtido na classificação em função da taxa de aprendizagem

Adicionando o termo momento ao algoritmo de Retropropagação a convergência do algoritmo torna- se mais rápida. O momento actua como um filtro 'passa-baixo' (low-pass filter) ignorando pequenos elementos na superfície de erro evitando assim que a função fique 'presa' num mínimo local. Na Fig. 5.3 encontram-se representadas as percentagens de erro obtidas com diferentes valores para o momento. 45.0 40.0 3SO Ifll ( > ■ 30.0 Ifí m 25.0 o m VOO 1 5 0 ■D # 10.0 5.0 0 0 mc=0,6 mc=0,7 mc=0,8 mc=0,9

Fig. 5.3 - Percentagem de erro na classificação em função do termo momento

Como foi referido anteriormente, um dos métodos utilizados como critério de paragem foi o da validação cruzada. Durante o treino da rede com este método verificou-se que o mesmo não era o mais adequado para esta rede, uma vez que o desempenho da mesma convergia com um erro

médio quadrático elevado. Assim, após vários testes na tentativa de melhorar o desempenho da rede, optou-se por treinar a mesma com o método de regularização. Os resultados obtidos foram mais satisfatórios que os obtidos com o método anterior. A rede foi treinada com diversas funções de activação e com diferentes variantes do algoritmo de Retropropagação.

Um dos algoritmos utilizados permite a actualização da taxa de aprendizagem ao longo do treino da rede, através da definição de valores (mínimo e máximo) para o incremento da mesma. Após o cálculo do erro na saída, se o novo erro for superior ao erro calculado anteriormente por uma margem definida, os novos pesos e desvios sistemáticos não são considerados, fazendo com que a taxa de aprendizagem seja diminuída, do contrário, ou seja, se o novo erro for inferior ao anterior a taxa de aprendizagem é aumentada.

Os testes realizados com este último algoritmo resultaram num erro, relativamente ao número de pessoas que efectivamente passaram num dado arco, que varia entre os 15% e os 40%. Os erros obtidos devem-se essencialmente à pequena dimensão da amostra. Na Fig. 5.4 encontra-se demonstrado o desempenho da rede com a taxa de aprendizagem variável.

10' 10° 10* 0 100 200 300 400 500 600 700 B00 900 1000 1000 Epochs Stop T wing |

Fig. 5.4 - Desempenho da rede com a taxa de aprendizagem variável

Os exemplos apresentados a seguir dizem respeito a uma arquitectura composta por uma camada intermédia com 6 neurónios, uma taxa de aprendizagem de 0.4 e um termo momento de 0.7.

Como seria de esperar, a rede neuronal consegue aprender a 100% quando nenhum condutor passa pelo arco ou vice-versa. No entanto, ela não tem um comportamento tão favorável quando apenas dois ou três condutores passam pelo arco a ser treinado. Como se pode verificar pela Fig. 5.5, nos casos em que pelo menos dez condutores passam no arco a rede consegue classificar o arco (passou ou não passou no arco) com um sucesso superior a 55%.

Arcos da rede viária

Fig. 5.5 - Análise da rede neuronal arco a arco

Analisando os resultados da rede neuronal, percurso a percurso, verifica-se que os erros obtidos são inferiores a 15%. Na figura seguinte encontram-se demonstrados dois exemplos de percursos (3 e 15), bem como o seu comportamento face ao algoritmo utilizado.

D percurso 3 D percurso 15 Retropropagação Retropropagação com momento Gradiente Conjugado Quasi-Newton

Os erros analisados na Fig. 5.6 dizem respeito à classificação total dos arcos, isto é, se o arco foi ou não percorrido pelo condutor, no entanto, não indicam qual o erro na classificação dos percursos tendo em conta apenas os arcos que foram percorridos pelos condutores. Esta análise pode ser verificada na Fig. 5.7. Neste exemplo encontram-se demonstrados os percursos 4 e 10. O percurso 10 é classificado com um sucesso de 29% no algoritmo Quasi-Newton e 48% no algoritmo de Retropropagação. Já no percurso 4 a rede tem um comportamento mais positivo conseguindo um sucesso na classificação superior a 65% em ambos os algoritmos.

Retropropagação Retropropagação com Gradiente Conjugado Quasi-Newton momento

Fig. 5.7 - Percentagem de erro na classificação: percurso 4 e 10

Analisando a Fig. 5.8 compreende-se porque a classificação falhou no percurso 10 (a verde) e não no percurso 4 (a vermelho). Tal deve-se ao facto do percurso 10 começar por utilizar os arcos a sul e depois utilizar arcos mais a norte, não seguindo os padrões da maior parte dos condutores que quando decidem o trajecto mais a sul não passam pelos arcos a norte. O percurso 4 opta por percorrer arcos muito transitáveis.

Fig. 5.8 - Percurso 4 (a vermelho) e 10 (a verde) realizado pelos condutores

Na Fig. 5.9 pode-se analisar os arcos que a rede neuronal atribui como percorridos pelos condutores. O percurso 4 é aquele a que a rede neuronal consegue atribuir um maior número de arcos percorridos, apesar de errar na classificação dos arcos a sul perto do Centro Comercial, uma vez que o condutor optou por percorrer os arcos mais a norte (Avenida Dr. Francisco Sá Carneiro). Através da observação da Fig. 5.9 não se consegue decifrar que arcos foram percorridos pelo condutor do percurso 10, apenas se pode dizer que o condutor entrou na área do Centro Comercial vindo de Norte (nó da A1).

O comportamento da rede neuronal ao longo do percurso 4 (realizado às 14.30h) foi muito estável, isto é, através da análise dos resultados da rede pode-se afirmar que o condutor partiu da origem em direcção ao destino passando pela Avenida Dr. Belchior Cardoso Costa, pela Rua António de Castro Corte Real, Rua Comendador Sá Couto e pela Rua Ferreira de Castro, ficando indefinido se o condutor optou pela Avenida Dr. Francisco Sá Carneiro ou Rua Domitília Carvalho.

Comparando os algoritmos de Retropropagação e Retropropagação com momento usando apenas arcos que foram percorridos pelo menos 10 vezes pelos condutores, verifica-se que o termo momento associado ao algoritmo de Retropropagação faz com que o mesmo tenha um comportamento superior em comparação à sua não utilização. Em alguns casos a diferença entre a utilização ou não, é superior a 25%. Verificou-se também que o algoritmo converge mais rapidamente utilizando o termo momento. Enquanto que a comparação entre os dois últimos métodos é quase imediata, o mesmo não se pode dizer em relação aos métodos Gradiente Conjugado e Quasi-Newton. Como se pode verificar pela Fig. 5.11 o comportamento entre estes dois métodos é muito semelhante, no entanto o método Quasi-Newton, na maior parte das vezes, é ligeiramente superior. Verifica-se que a utilização de um método de optimização numérica melhora em muito o desempenho da rede.

ro 80,0

- ♦ — Retropropagação

Retropropagação com momento

1 2 3 6 20 23 24 30 35 43 47 49 60 61 62 71 93 100 106 147 149 151 174 187 203 204 205 240 242 243 275

Arcos da rede viária

Fig. 5.10 - Comparação entre o algoritmo Retropropagação e Retropropagação com momento

-Gradiente Conjugado Quasi-Newton

V

2 3 6 20 23 24 30 35 43 47 48 61 62 71 93 100 106 147 149

Arcos da rede viária

174 187 203 204 205 240 242 243 275

Fig. 5.11 - Comparação entre algoritmo Gradiente Conjugado e Quasi-Newton

aj 20.0 -

- Retropropagação Qau si-Newton

6 20 23 24 30 35 4? 47 48 60 61 (32 71 93 100 106

Arcos da rede viária

149 151 174 187 203 204 205 240 242 243 275

Fig. 5.12 - Comparação entre a utilização de um algoritmo com optimização numérica (Quasi-A/ewfon) e outro sem optimização

Tendo em vista um aperfeiçoamento dos resultados, optou-se por realizar outra análise, criando-se uma nova rede neuronal. Esta segunda análise tem como objectivo o estudo dos arcos mais percorridos na cidade de Santa Maria da Feira, a diferentes horas do dia e com diferentes condições climatéricas. A rede neuronal criada para este estudo é composta por 6 vectores de entrada - hora do dia, estado do pavimento face ás condições atmosféricas, tipo de pavimento, conflitos com peões, velocidades praticadas e número de entroncamentos de cada arco - e por 182 arcos da rede viária da cidade. O alvo da rede é a percentagem de pessoas que percorreram esse arco nas mesmas condições.

O treino da rede foi realizado com recurso a vários algoritmos, escolhendo-se para demonstração a variante do algoritmo de Retropropagação que elimina as pequenas variações dos pesos e desvios sistemáticos. Ao contrário da rede neuronal anterior, para este estudo utilizou-se dois tipos de processamento, o primeiro com uma rede estática composta por vectores de entrada concorrentes e o segundo com uma rede dinâmica processada em modo sequencial. Para o processamento em modo sequencial, dividiu-se a amostra em 4 grupos distintos: grupol - piso seco e hora de ponta; grupo 2 - piso seco e não hora de ponta; grupo 3 - piso molhado e hora de ponta; grupo 4 - piso molhado e não hora de ponta.

Analisando os dados recolhidos e os grupos criados, verifica-se que a amostra não contém uma distribuição homogénea, uma vez que o grupo 1 é composto por 21 percursos, o grupo 2 por 77, o grupo 3 por zero e o grupo 4 por 21. Desta forma, a análise da rede será realizada essencialmente com o grupo 2. Foi criada uma rede neuronal com uma arquitectura composta por 7 neurónios na camada intermédia e um na de saída. Os valores obtidos resultam numa previsão dos arcos mais percorridos com um erro inferior a 20 %, na maior parte dos arcos estudados.

A Fig. 5.14 representa os resultados obtidos no treino da rede e a Fig. 5.13 o erro obtido na classificação. Enquadrando estes erros na localização geográfica dos arcos, verifica-se uma tendência da rede para atribuir menor percentagem de pessoas nos arcos mais percorridos pelos condutores e, por outro lado, um excesso de pessoas nos arcos menos percorridos. Na Fig. 5.15 encontra-se demonstrado esta evidência.

ri |-rf rffl nf rífl n 10- o

m

ff % d e err o n a prévi s ; 7 H ' 4J , ™ UJJ UM UU W LU lüJ UJJ » J « », -30 -

i

O grupo 1 □ grupo2 □ grupo4

Arcos da rede viária

Fig. 5.13 - Erro obtido na previsão da percentagem de arcos percorridos

SR 6 9 7 0 71 7 2 7 3 7 4 75 76 77 7 8 7 9 8 0

Arcosda rede vi ária

82 S3 84 85

Fig. 5.14 - Previsão da rede neuronal para o grupo 2

Dans le document TCP/IP Illustrated,Volume 1 (Page 168-172)