Buscar

Portfólio Técnicas de Inteligência Artificial

Prévia do material em texto

ENGENHARIA DE SOFTWARE 
UNOPAR – Cidade 
Nome RA: 
 
 
 
 
 
PORTIFÓLIO – RELATÓRIO DE AULA PRÁTICA 
TÉCNICAS DE INTELIGÊNCIA ARTIFICIAL 
 
 
 
 
 
 
 
 
 
 
 
 
Cidade/UF 
2023 
 
 
1 
 
Nome RA: 
 
 
 
 
 
 
ATIVIDADE PRÁTICA 
TÉCNICAS DE INTELIGÊNCIA ARTIFICIAL 
 
 
 
 
 
 
Trabalho apresentado à Universidade ANHANGUERA, 
como requisito parcial para a obtenção de média 
semestral nas disciplinas norteadoras do semestre letivo. 
 
Tutor (a): Jessica Fernandes Lopes 
 
 
 
 
 
 
 
 
 
 
 
 
Cidade/UF 
2023 
 
2 
 
 
SUMÁRIO 
 
INTRODUÇÃO ........................................................................................................................ 3 
DESENVOLVIMENTO ........................................................................................................... 4 
ATIVIDADE PROPOSTA ........................................................................................................................ 4 
RESULTADOS ....................................................................................................................................... 8 
CONCLUSÃO ......................................................................................................................... 10 
REFERÊNCIAS BIBLIOGRÁFICAS ................................................................................. 11 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
3 
 
 
 
INTRODUÇÃO 
 
Nesta aula prática de Técnicas de Inteligência Artificial, tivemos a oportunidade 
de explorar o software Weka e criar uma Rede Neural Perceptron de multicamadas 
para realizar previsões de outputs em um conjunto de dados chamado "diabetes.arff". 
O objetivo principal era entender como configurar e interpretar os resultados de um 
modelo de aprendizado de máquina usando uma ferramenta poderosa como o Weka. 
O Weka se mostrou uma ferramenta versátil, oferecendo uma coleção de 
algoritmos de aprendizado de máquina para várias tarefas de mineração de dados. 
Durante a atividade, conseguimos aprender como configurar o modelo, interpretar os 
resultados e comparar diferentes configurações de divisão de dados. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
4 
 
 
 
DESENVOLVIMENTO 
 
ATIVIDADE PROPOSTA 
 
Inicialmente, o software Weka foi iniciado e, no diretório de instalação 
correspondente, encontramos a pasta 'data', que contém alguns dados 
disponibilizados para utilização direta na aplicação. Na sequência, acessamos o 
arquivo 'diabetes.arff' e constatamos que essa base de dados possui nove atributos 
(colunas) com um total de 768 instâncias (linhas). Ao selecionar 'Visualizar Todos', 
tivemos a oportunidade de examinar a representação gráfica das variáveis presentes 
nesse conjunto de dados. 
Figura 1 - distribuição das variáveis da base de dados. Fonte: O autor (2023). 
 
 
Vale ressaltar que o propósito da atividade prática era realizar a implementação 
de uma Rede Neural Perceptron de múltiplas camadas em um conjunto de dados, 
com o objetivo de realizar previsões de saída por meio de classificação, além de 
comparar os resultados do modelo conforme a variação no tamanho dos conjuntos de 
teste e treinamento. Para atingir esse objetivo, seguimos os passos a seguir: 
5 
 
Clicamos no botão 'Classify' localizado no canto superior esquerdo da janela e, 
em seguida, escolhemos a opção 'Classifer'. No menu suspenso, optamos pela função 
'MultilayerPercepton', que estava localizada na pasta 'function'. Em 'Test options', 
marcamos a caixa 'Use training set' e, em seguida, clicamos em 'Start'. Na janela 
denominada 'Classifier', selecionamos o nome 'MultilayerPerceptron'. 
Essa janela oferece diversas configurações que podem ser personalizadas em 
relação ao modelo de Rede Neural. Selecionamos a caixa de seleção 'GUI' e optamos 
pela opção 'True'. Após isso, clicamos em 'Ok'. Em seguida, executamos novamente 
o modelo ao clicar no botão 'Start', resultando na abertura de uma nova janela exibindo 
a seguinte imagem: 
Figura 2 – janela Neural Network. Fonte: O autor (2023). 
 
 
Na recém-aberta janela denominada 'Neural Network', clicamos em 'Iniciar' e, 
em seguida, no botão 'Aceitar'. No 'Saída do Classificador', como é mostrado na 
imagem a seguir, examinamos minuciosamente os resultados da tela 'Saída do 
Classificador', dando especial atenção aos valores de 'Root mean squared error' (erro 
quadrático médio) e da 'Matriz de Confusão'. 
 
 
6 
 
Figura 3 – Resultados da tela “Classifier Output”. Fonte: O autor (2023). 
 
 
Os dados de 'Root mean squared error' apresentaram o valor de 0.3815. 
Quanto à 'Matriz de Confusão', os seguintes resultados foram obtidos: 
| a | b | Classificado como 
401 | 99 | a = testado_negativo 
50 | 218 | b = testado_positivo 
Em seguida, procedemos à divisão dos dados de forma que 75% fossem 
destinados ao conjunto de teste e o restante ao conjunto de treinamento do modelo. 
Em 'Opções de Teste', selecionamos a alternativa 'Divisão por Porcentagem' e 
inserimos o valor 75 ao lado do símbolo '%'. Posteriormente, clicamos em 'Iniciar'. A 
janela 'Rede Neural' foi aberta novamente e clicamos em 'Iniciar' e, em seguida, em 
'Aceitar' duas vezes nessa janela. A imagem a seguir ilustra o resultado desse 
processo, permitindo-nos comparar os valores de 'Root mean squared error' e 'Matriz 
de Confusão' com os do modelo anterior. 
 
 
 
7 
 
Figura 4 – nova janela Neural Network. Fonte: O autor (2023). 
 
 
Figura 5 – resultados finais. Fonte: O autor (2023). 
 
 
Como é evidenciado, os dados de 'Root mean squared error' revelam um valor 
de 0.4146. No que diz respeito à 'Matriz de Confusão', os resultados são os seguintes: 
8 
 
 
| a | b | Classificado como 
114 | 16 | a = testado_negativo 
28 | 34 | b = testado_positivo" 
 
 RESULTADOS 
 
Na primeira execução, optamos por utilizar a opção 'Use training set', 
resultando em um valor de 'Root mean squared error' de 0.3815 e uma matriz de 
confusão que classificou 401 valores como 'tested_negative' e 218 valores como 
'tested_positive'. Já na segunda execução, procedemos com a divisão dos dados, 
alocando 75% para teste e 25% para treinamento. Dessa vez, o 'Root mean squared 
error' foi calculado como 0.4146, e a matriz de confusão apresentou 114 valores 
classificados como 'tested_negative' e 34 valores como 'tested_positive'. 
Os valores de 'Root mean squared error' representam uma métrica que avalia 
o quão bem o modelo de rede neural se adapta aos dados de treinamento e teste. Em 
essência, ele nos fornece uma medida da discrepância entre os valores previstos pelo 
modelo e os valores reais, sendo que um valor menor indica um ajuste melhor do 
modelo aos dados. 
A 'Confusion Matrix', por sua vez, é uma ferramenta que nos permite analisar a 
relação entre as classes reais e as classes previstas pelo modelo. Ela desempenha 
um papel fundamental na avaliação do desempenho do modelo de classificação, 
ajudando a identificar os acertos e erros nas previsões. 
É importante destacar que as diferenças nos valores de 'Root mean squared 
error' e 'Confusion Matrix' entre os dois modelos podem ser atribuídas à variação no 
tamanho dos conjuntos de dados de teste e treinamento. Essa variação impacta 
diretamente na precisão das previsões do modelo, resultando em taxas diferentes de 
acertos e erros. 
9 
 
Além disso, é relevante ressaltar que a qualidade dos dados utilizados também 
influencia os resultados. Dados de baixa qualidade podem prejudicar o desempenho 
do modelo, independentemente do tamanho do conjunto de dados. 
Portanto, a avaliação cuidadosa dos resultados é essencial ao trabalhar com 
modelos de rede neural no Weka. Isso inclui testar o modelo em diferentes conjuntos 
de dados, ajustar parâmetros quando necessário e garantir que os dados de 
treinamento e teste sejam de alta qualidade para obter o melhor desempenhopossível. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
10 
 
CONCLUSÃO 
 
Concluímos com êxito a aula prática, onde exploramos o software Weka e 
criamos uma Rede Neural Perceptron de multicamadas para previsão de outputs. Foi 
interessante ver como a variação no tamanho dos dados de treinamento e teste pode 
impactar o desempenho do modelo. 
Ao analisar os resultados, incluindo a "Root mean squared error" e a "Confusion 
Matrix", pude avaliar como diferentes configurações de divisão de dados afetaram o 
desempenho do modelo. Isso proporcionou uma compreensão prática de como 
otimizar modelos de aprendizado de máquina para obter os melhores resultados. 
Como parte da entrega, fornecerei a imagem da Rede Neural Perceptron de 
multicamadas treinada e uma interpretação detalhada dos resultados ao aplicar o 
modelo à base de dados proposta. Espero que minha atividade demonstre um sólido 
entendimento das técnicas de inteligência artificial e sua aplicação prática no Weka. 
Estou ansioso para compartilhar meu trabalho com o professor e a turma. 
 
 
 
 
 
 
 
 
 
 
 
 
11 
 
REFERÊNCIAS BIBLIOGRÁFICAS 
 
MENOTTI, D. Data Mining with Open-Source Machine Learning Software in Java Introdução ao 
Weka. [s.l: s.n.]. Disponível em: <https://www.inf.ufpr.br/menotti/am-17/slides/ML-09weka.pdf>. Acesso 
em: 3 out. 2023. 
The Data Platform for AI. Disponível em: <https://www.weka.io/>. 
GRANATYR, J. Visualizar Rede Neural no Weka. Disponível em: 
<https://iaexpert.academy/2017/04/10/visualizar-rede-neural-no-
weka/?doing_wp_cron=1696346793.8439190387725830078125>. Acesso em: 3 out. 2023. 
CAMARGO, M. Utilização de algoritmos de aprendizagem de máquina para predição de absorção de 
água nas carcaças de frango: aplicação de redes neurais artificiais. Utfpr.edu.br, 2021.

Mais conteúdos dessa disciplina