Você está na página 1de 12

INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DO CEARÁ –

CAMPUS MARACANAÚ
EIXO TECNOLÓGICO DA INDÚSTRIA

FRANCISCO ERICK DE OLIVEIRA SOUSA


BRUNO PEREIRA TAKAZONO

TRABALHO 04 DE INTELIGÊNCIA COMPUTACIONAL APLICADA (ICA)


REDES ELM E MLP PARA CLASSIFICAÇÃO E REGRESSÃO - 2023.1

MARACANAÚ
2023
FRANCISCO ERICK DE OLIVEIRA SOUSA
BRUNO PEREIRA TAKAZONO

TRABALHO 04 DE INTELIGÊNCIA COMPUTACIONAL APLICADA (ICA)


REDES ELM E MLP PARA CLASSIFICAÇÃO E REGRESSÃO - 2023.1

Trabalho apresentado ao Curso de


Engenharia de Controle e Automação
do Instituto Federal de Educação,
Ciência e Tecnologia do Ceará – IFCE
Campus Maracanaú, como requisito
parcial para aprovação na disciplina de
Inteligência Computacional Aplicada.
.

MARACANAÚ
2023
SUMÁRIO

1. Introdução...........................................................................................................................3
2. Metodologia........................................................................................................................ 4
3. Resultados Classificação..................................................................................................6
3.1 Resultados da base de dados Torneamento................................................................6
3.2 Resultados base de dados Coluna Vertebral............................................................... 7
4. Resultados Regressão...................................................................................................... 8
4.1 Resultados da base de dados Sinc..............................................................................8
5. Conclusão......................................................................................................................... 10
6. Apêndice........................................................................................................................... 11
1. Introdução

O objetivo deste relatório é apresentar uma análise comparativa do


desempenho de dois tipos de redes neurais artificiais na tarefa de classificação de
padrões e regressão: Extreme Learning Machine (ELM) e Multilayer Perceptron
(MLP), utilizando duas bases de dados: Torneamento e Coluna Vertebral.
A base de dados Torneamento contempla informações para estabelecer a
relação entre as condições microestruturais dos aços de grão não orientado durante
a etapa de recristalização secundária e suas perdas magnéticas correspondentes,
cuja quantificação foi determinada a partir das curvas de histerese. O objetivo é
classificar corretamente cada amostra de acordo com seu tipo.
Já a base de dados Coluna Vertebral contém informações de seis
características biomecânicas usadas para classificar pacientes ortopédicos em 3
classes: normal (100 pacientes), hérnia de disco (60 pacientes) ou espondilolistese
(150 pacientes). O objetivo é classificar corretamente cada amostra de acordo com
sua categoria.
A base de dados da função sinc consiste em quatro conjuntos de dados
(treino_sinc_dan, teste_sinc_dan, alvotr_sinc_dan, alvote_sinc_dan), cada um com
301 linhas correspondendo aos pontos da função sinc. A função sinc pode ser
aplicada em cada aos valores de entrada para obter os valores de saída
correspondentes . Essa base de dados pode ser usada para treinar e testar modelos
de regressão na tarefa de aproximação da função sinc.
Cada rede neural apresenta suas peculiaridades para a execução da tarefa
de classificação, e espera-se que a análise comparativa dos resultados dos
experimentos permita identificar qual dos algoritmos apresenta o melhor
desempenho para cada base de dados e suas limitações .
Em um cenário de regressão, espera-se observar a capacidade dos modelos
de aproximar a função sinc.
Através desses experimentos, será possível avaliar a capacidade dos
modelos em capturar o padrão da função sinc e produzir previsões que se
aproximem dos valores reais
2. Metodologia

Para a realização dos experimentos, as bases de dados Coluna Vertebral e


Dermatologia foram carregadas utilizando a biblioteca Pandas do Python. A
biblioteca NumPy foi utilizada para manipulação e processamento dos dados onde
houve uma checagem se as bases de dados possuíam dados faltantes, além disso
foi performado uma normalização dos dados de entrada usando o MinMaxScaler da
biblioteca scikit-learn,que transforma os dados numa escala de 0 a 1 e sua fórmula
é representada na Fig. (1).

Figura 1: A fórmula geral para um min-max de [0, 1]

Foi aplicado o One-Hot Encoder à variável alvo, cada categoria é


representada por uma coluna binária separada. Essa técnica garante que a
representação da categoria seja adequada para fins de classificação, com um valor
de 1 atribuído à categoria correspondente na coluna e valores de 0 nas demais
colunas para indicar a não pertinência às outras categorias.
A base de dados foi dividida em uma proporção de 80% para treinamento e
20% para teste.
No contexto da classificação, dois modelos de RNA foram utilizados: ELM e
MLP. Ambos os modelos foram treinados com um número fixo de épocas, que
representa o número de vezes que o algoritmo percorre todo o conjunto de
treinamento durante o processo de aprendizagem. Para determinar o desempenho
ideal do modelo, o passo de aprendizagem foi selecionado com base em
experimentos empíricos.
No caso específico das duas bases de dados mencionadas (Coluna Vertebral
e Torneamento), foram escolhidos os mesmos valores para número de épocas:
● Número de épocas (Torneamento): 10000
● Número de épocas (Coluna vertebral): 100
No caso específico da MLP e da ELM, foi adotada a mesma quantidade de
neurônios na camada oculta para ambas as abordagens. Essa decisão foi tomada
por meio de experimentação, onde diferentes configurações de números de
neurônios foram exploradas em um intervalo de 2 a 32. Além disso, para a MLP foi
necessário especificar o passo de aprendizado (learning rate), enquanto que a ELM
não requer passo de aprendizado pois seu método de treinamento é diferente .
● Learning rate: 0.01
● Número de neurônios na camada oculta (Torneamento): 100
● Número de neurônios na camada oculta (Coluna Vertebral): 16
Todas as escolhas feitas em relação ao passo de aprendizagem, número de
épocas e número de neurônios na camada oculta foram baseadas em uma
abordagem experimental. Diferentes configurações foram avaliadas e comparadas
para identificar a combinação que resulta em um desempenho otimizado.
Essa abordagem experimental permite ajustar os parâmetros do modelo para
obter resultados mais precisos e aprimorar o desempenho geral da RNA na tarefa
de classificação.
No cenário de regressão, ambos os modelos de RNA foram empregados na
tentativa de aproximar a função sinc. As seguintes configurações foram utilizadas
para cada modelo:
MLP
● Learning rate: 0.01
● Número de épocas : 10
● Número de neurônios na camada oculta : 110
ELM
● Número de épocas : 10
● Número de neurônios na camada oculta : 10
Essa decisão foi tomada por meio de experimentação, onde diferentes
configurações de números de neurônios foram exploradas em um intervalo de 1 a
150.
Na tarefa de regressão, o RMSE (Root Mean Squared Error) foi utilizado
como métrica para avaliar o desempenho dos modelos.
Após o treinamento dos modelos, eles foram avaliados utilizando os dados de
treino e teste. Essa etapa de avaliação com os dados de teste é essencial para
verificar a capacidade do modelo de generalizar o aprendizado e avaliar seu
desempenho em dados totalmente desconhecidos.
3. Resultados Classificação

3.1 Resultados da base de dados Torneamento

Para validar os resultados e comparar o desempenho dos classificadores,


foram calculadas as taxas de acurácia médias após 50 rodadas e seus respectivos
desvios padrão. Esses valores foram organizados na Tabela 1. Além disso, foram
geradas matrizes de confusão a partir da soma de 50 iterações do experimento, as
quais estão apresentadas nas Tabelas 2 e 3. Essas tabelas fornecem uma visão
detalhada e abrangente do desempenho dos classificadores em relação à base de
dados analisada.

Tabela 1 - Resultados média accuracy da base de dados torneamento após 50 rodada

Training Phase Test Phase


Classifiers Mean Std Mean Std
ELM 0,954833 0,005855 0,947333 0,023419
MLP 0,936750 0,006384 0,936333 0,025536

Tabela 2 - Matrizes Confusão da base de dados torneamento na rede ELM após 50 rodadas

Classifier Prediction - Training Classifier Prediction - Test


Real Label 1 2 3 4 5 Real Label 1 2 3 4 5
1 2219 0 84 80 0 1 581 0 16 20 0
2 44 2351 0 37 0 2 6 549 0 13 0
3 0 0 2271 109 0 3 0 0 579 41 0
4 0 0 116 2282 0 4 0 0 34 568 0
5 0 0 0 72 2335 5 0 0 0 28 565

Tabela 3 - Matrizes Confusão da base de dados torneamento na rede MLP após 50 rodadas.

Classifier Prediction - Training Classifier Prediction - Test


Real Label 1 2 3 4 5 Real Label 1 2 3 4 55
1 2301 79 0 0 0 1 599 21 0 0 0
2 36 2297 0 0 88 2 14 553 0 0 12
3 0 0 1994 392 0 3 0 0 506 108 0
4 0 0 40 2359 0 4 0 0 10 591 0
5 0 0 0 124 2290 5 0 0 0 26 560
A rede ELM demonstrou um desempenho superior em comparação à rede
MLP, como evidenciado pela Tabela 1. Além disso, uma observação adicional pode
ser feita ao analisar a matriz de confusão da rede ELM, na qual os erros foram
distribuídos de maneira um pouco mais uniforme em relação à rede MLP, como
indicado nas Tabelas 2 e 3.

3.2 Resultados base de dados Coluna Vertebral

A fim de validar os resultados e comparar o desempenho dos classificadores,


foram compiladas as taxas de acerto médias e seus respectivos desvios padrão e
dispostos na Tabela 4. Além disso, foram geradas matrizes de confusão a partir da
soma de 50 iterações do experimento, sendo apresentadas nas Tabelas 5 e 6.
Essas tabelas fornecem uma visão detalhada do desempenho dos classificadores
em relação à base de dados utilizada.

Tabela 4 - Resultados média accuracy da base de dados coluna vertebral após 50 rodada

Training Phase Test Phase


Classifiers Mean Std Mean Std
ELM 0,866210 0,01287 0,836774 0,04899
MLP 0,828952 0,10942 0,813226 0,043768

Tabela 5 - Matrizes Confusão da base de dados coluna vertebral na rede ELM após 50 rodadas.

Classifier Prediction - Training Classifier Prediction - Test


Real Label 1 2 3 Real Label 1 2 3
1 1541 786 75 1 360 213 25
2 460 3437 103 2 142 830 28
3 3 232 5763 3 12 86 1404
Tabela 6 - Matrizes Confusão da base de dados coluna vertebral na rede MLP após 50 rodadas.

Classifier Prediction - Training Classifier Prediction - Test


Real Label 1 2 3 Real Label 1 2 3
1 1502 900 0 1 348 250 0
2 398 3399 165 2 102 901 35
3 150 508 5378 3 50 142 1272

A rede Extreme Learning Machine (ELM) demonstrou um desempenho


superior quando comparada à rede Multilayer Perceptron (MLP), conforme
evidenciado na Tabela 4. Além disso, uma observação adicional pode ser feita ao
analisar a matriz de confusão da rede ELM, na qual os erros foram distribuídos de
maneira mais uniforme em relação à rede MLP, como indicado nas Tabelas 5 e 6.

4. Resultados Regressão

4.1 Resultados da base de dados Sinc

Para validar os resultados e comparar o desempenho, foram calculadas a


média da raiz do erro quadrático médio após 50 rodadas nos dados de treino e teste
e seus respectivos desvios padrão. Esses valores foram organizados na Tabela 7.
Além disso, foram gerados gráficos com a melhor performance (menor valor de
RMSE), as quais estão apresentadas nos Gráficos 1 e 2. A fim de fornecer uma
visão detalhada e abrangente do desempenho em relação à base de dados
analisada.

Tabela 7 - Resultados média e desvio padrão do erro quadrático médio (RMSE) da base de dados
torneamento após 50 rodada

Training Phase Test Phase


Classifiers Mean (RMSE) Std (RMSE) Mean (RMSE) Std (RMSE)
ELM 0,000141 0,000177 0,000142 0,000182
MLP 0,061217 0,039674 0,061225 0,039675
Gráfico 1 - Saída predita x saída real da base de dados sinc na rede ELM após 50 rodadas

Gráfico 2 - Saída predita x saída real da base de dados sinc na rede MLP após 50 rodadas
A rede Extreme Learning Machine (ELM) demonstrou um desempenho
superior quando comparada à rede Multilayer Perceptron (MLP), conforme
evidenciado na Tabela 7. Além disso, uma observação adicional pode ser feita ao
analisar os gráficos da saída predita x saída real tanto no treinamento quanto no
teste na rede ELM em comparação a MLP, como indicado nas Gráficos 1 e 2.

5. Conclusão

● A rede ELM apresentou um desempenho superior em relação à rede


MLP no cenário de classificação nas bases de dados de Torneamento
e Coluna Vertebral.
● Com base na análise da acurácia, ficou evidente, por meio das tabelas
1 e 4, que a ELM obteve resultados superiores em comparação com a
MLP. Isso indica uma capacidade maior de realizar classificações
corretas por parte da ELM, demonstrando seu desempenho superior
em relação à MLP na tarefa de classificação.
● A análise das matrizes de confusão também evidenciou que a ELM
teve maior precisão e um menor número de amostras classificadas
erroneamente como pode ser visto nas tabelas 2, 3, 5 e 6.
● Portanto, para as bases de dados de torneamento e coluna vertebral,
a rede ELM é a escolha mais adequada em termos de eficiência e
precisão na classificação no cenário estudado.
● A rede ELM apresentou um desempenho superior em relação à rede
MLP no cenário de regressão na base de dados sinc.
● A análise dos resultados revelou que a ELM alcançou valores menores
de RMSE em comparação com a MLP, conforme evidenciado na
Tabela 7. Esses resultados indicam que a ELM apresentou um
desempenho superior na tarefa de regressão, sendo capaz de realizar
uma aproximação mais precisa da função sinc em relação à MLP.
● Ao analisar os gráficos 1 e 2 podemos perceber que a saída predita da
ELM se aproximou mais da saída real da função sobrepondo a mesma
enquanto na MLP é mais evidente que há oscilações.
● Portanto, com base nessas constatações, conclui-se que a ELM é
mais adequada para a tarefa de regressão, oferecendo uma menor
dispersão dos erros e uma maior precisão na estimativa dos valores
reais.
● É fundamental destacar que essas conclusões são específicas para as
bases de dados em análise e podem não ser generalizadas para
outros conjuntos de dados ou contextos de aplicação.

6. Apêndice

Código rede ELM:


https://drive.google.com/file/d/1TmSa4KMds1RQV9q_ZzH18SDf65RW
_4-Q/view?usp=drive_link

Código rede MLP:


https://colab.research.google.com/drive/1gKIl3KFIgJB1-YST_z8DbkhIp
d2OWUzj

Código regressão rede ELM:


https://drive.google.com/file/d/1e_UtBsSzYhuRqqIcz7RwhdeBMcSUU
WBc/view?usp=drive_link

Código regressão rede MLP:


https://drive.google.com/file/d/1_XwcYybi7OUmresG3wYefr1wzH0JnZz
D/view?usp=drive_link

Base de Dados Coluna Vertebra:


https://www.kaggle.com/code/caesarlupum/starter-vertebral-column-dat
aset

Você também pode gostar