SlideShare ist ein Scribd-Unternehmen logo
1 von 21
Downloaden Sie, um offline zu lesen
Criando e aplicando modelos de redes neurais e árvores de decisão
                                           Danilo Dias1,

     Faculdade de Sistemas de Informação – Universidade Federal do Oeste do Pará (UFOPA)

                                      Santarém – PA – Brasil
                                     ¹danilohdds@gmail.com
    Abstract. This article aims to build neural network and tree models to real problems of
    our society, in this case we used the problem that deals with the analysis of credit,
    problems related to credit card companies and other financial institutions, their files will
    be used: card1, card2 and Card3, collection Proben1 real data, the simulator will be used
    Weka 3.7.
    Resumo. Este artigo pretende criar modelos de redes neurais e árvores de decisão para
    problemas reais de nossa sociedade, neste caso usaremos o problema que aborda a
    análise de credito, problemática relacionada a operadoras de cartões de credito e outras
    instituições financeiras, os respectivos arquivos usados serão: card1, card2 e card3, da
    coleção de dados reais Proben1, o simulador usado será o Weka 3.7.

1. Introdução
O uso de tecnologia sempre deve servir para realizar uma função em nossa sociedade, ao longo de
nossa história vimos surgir diversas formas de tecnologias, uma delas surgiu logo após a segunda
guerra mundial, com o artigo "Computing Machinery and Intelligence" do matemático inglês Alan
Turing[1] e teve como seus principais idealizadores os cientistas Herbert Simon, Allen Newell, John
McCarthy, Warren McCulloch, Walter Pitts e Marvin Minsky, entre outros. O conceito propõe o
uso de computadores simulando inteligência humana, baseado nisto surgi o termo Inteligencia
Artificial, com o aparecimento de computadores modernos o conceito passou a se tornar uma
ciência cada vez mais divulgada e usada para resoluções de problemas reais de nossa sociedade.
Neste artigo pretendemos usar de conceitos de Inteligencia Artificial em nosso experimento, criação
de modelos de redes neurais e árvores de decisão, escolhemos a problemática de análise de credito,
neste caso vamos realizar uma série de simulações em banco de dados relacionado ao problema,
procurando achar modelos mais eficientes com o uso de comparação entre eles. Na segunda parte
deste artigo veremos a descrição da problemática em questão, num terceiro momento iremos
abordar a metodologia que usaremos no experimento, na quarta etapa deste artigo iremos realizar o
experimento com o uso de ferramenta apropriada, neste caso o Weka 3.7, apresentaremos nossos
resultados através de gráficos e tabelas, e por último apresentamos nossas conclusões acerca de
nosso trabalho.

2. Descrição da problemática
Em nosso caso resolvemos escolher uma aplicação de classificação de padrões do Proben1, que é
uma       coleção      de      dados      reais    disponível      na    internet      através    do
link:http://www.filewatcher.com/b/ftp/ftp.cs.cuhk.hk/pub/proben1.0.0.html ,neste diretório podemos
encontrar várias bases de dados relacionadas a problemas como: diagnose de problemas do coração
- heart; diagnose de diabetes - diabetes; diagnose de câncer da mama - cancer; análise de crédito -
card entre outros. Em nosso caso escolhemos a problemática Card, que dispõe sobre a análise de
credito, mas especificamente prever a aprovação ou não de um cartão de credito a um cliente, cada
um representa um exemplo real de pedido de cartão de crédito e a saída descreve se o banco (ou
instituição similar)deferiu o cartão de crédito ou não. O significado dos atributos individuais não é
explicada por razões de incidência com 51 entradas, 2 saídas de 690 exemplos. Este conjunto de
dados tem uma boa mistura de atributos: contínuo, nominal com um pequeno número de valores
nominais e com maior número de valores. Existem também alguns valores faltando
em 5% dos exemplos. 44% dos exemplos são positivos; entropia 0,99 bits por exemplo.
Este conjunto de dados foi criado com base em "dados da análise de crédito " problema conjunto da
UCI repositório de bases de dados de aprendizagem de máquina.

3. Metodologia usada no experimento
Para nosso trabalho a prática mais aconselhada será investigar um conjunto de topologias da rede
MLP e com diferentes valores de parâmetros na solução do problema e criação de árvores de
decisão com o algoritmo J4.8 , usaremos o simulador Weka 3.7 para este experimento. Iremos pegar
nossa base com 690 linhas de dados pra cada Card e a quebraremos em 50% para treinamento, 25%
para validação e 25% para testes, após esta etapa faremos o uso de tabelas e gráficos para análise de
nossas configurações, elegeremos então o nosso melhor modelo, ou seja nossa melhor configuração
resultada da execução de nosso arquivo de validação sobre nosso arquivo de treinamento, isso será
feito para os dois algoritmos. Só então faremos a validação de nosso melhor modelo através da
execução de nosso conjunto de teste usando nosso melhor exemplar, ao final iremos efetuar a
comparação entre nosso melhor modelo de rede neural com o de árvore de decisão.

4. Simulações e resultados
Em nossa simulação usamos o Weka 3.7, para o nosso problema fizemos a separação do conjunto
de dados para o card1, card2 e card3, para cada um deles configuramos três arquivos:
treinamento.arff com 345 linhas de dados, validacao.arff com 173 e teste.arff com 172.

4.1 Card1
Para o card1 usamos o algoritmo MultlayerPerceptron, camada escondida "a" e finalizamos nossa
configuração segundo a tabela abaixo, sendo que para a relação época/tempo de aprendizagem
obtivemos uma taxa de erro associada, consideremos esta taxa em porcentagem(% de erro).

Épocas    Temp. Ap. 0.1   Temp. Ap. 0.2   Temp. Ap. 0.3   Temp. Ap. 0.4
100       9.8266          13.8728         12.1387         12.1387
200       15.0289         12.7168         15.0289         15.0289
300       15.6069         12.7168         15.0289         16.185
400       16.763          15.0289         14.4509         16.185
500       17.9191         18.4971         12.7168         16.185
600       16.763          17.341          13.8728         15.6069
700       17.341          16.763          15.0289         15.0289
800       17.341          16.763          15.6069         14.4509
900       16.185          16.763          15.0289         14.4509
1000      16.185          16.763          15.0289         13.8728




Em relação aos respectivos tempos de aprendizagem obtivemos os seguintes gráficos.
Como podemos constatar analisando nossa tabela e nossos gráficos nosso melhor modelo tem a
seguinte configuração com taxa de aprendizagem(learningRate) 0.1 e épocas(TrainingTime) 100.




Nosso melhor modelo apresenta os seguintes resultados, como podemos observar: 156 instancias
classificadas corretamente e 17 instancias classificadas incorretamente com taxa de erro de
9.8266%. Em nossa matriz confusão podemos verificar que tivemos 87 verdadeiros positivos, 11
falsos positivos, 6 falsos negativos e 69 verdadeiros negativos.
Na execução de nosso conjunto de teste sobre nosso melhor modelo os seguintes resultados são
encontrados, como podemos observar: 150 instancias classificadas corretamente e 22 instancias
classificadas incorretamente com taxa de erro de 12.7907%, sendo uma taxa aceitável, pois o limite
para o card1 é de 13.37 segundo padrões. Em nossa matriz confusão podemos verificar que tivemos
79 verdadeiros positivos, 13 falsos positivos, 9 falsos negativos e 71 verdadeiros negativos.




Ainda para o card1 usamos o algoritmo J4.8, nossa configuração segue a tabela abaixo, sendo que
para a relação do número de instancias mínimas nas folhas obtivemos um tamanho de árvore e uma
taxa de erro associada, consideremos esta taxa em porcentagem(% de erro).
Card1
Mínimo de instancias nas         Tamanho da árvore Erro associado
folhas
1                                43                   13.8728
2                                39                   12.1387
3                                35                   14.4509
4                                27                   12.7168
5                                21                   12.1387

Em relação aos respectivos números mínimos de instancias nas folhas obtivemos o seguinte gráfico.




Como podemos constatar analisando nossa tabela e nosso gráfico, nosso melhor modelo tem a
seguinte configuração com número mínimo de instancias por folha igual a 5.
Nosso melhor modelo apresenta os seguintes resultados, como podemos observar: 152 instancias
classificadas corretamente e 21 instancias classificadas incorretamente com taxa de erro de
12.1387%. Em nossa matriz confusão podemos verificar que tivemos 85 verdadeiros positivos, 13
falsos positivos, 8 falsos negativos e 67 verdadeiros negativos.




Na execução de nosso conjunto de teste sobre nosso melhor modelo os seguintes resultados são
encontrados, como podemos observar: 148 instancias classificadas corretamente e 24 instancias
classificadas incorretamente com taxa de erro de 13.9535%, sendo uma taxa inaceitável, pois o
limite para o card1 é de 13.37 segundo padrões. Em nossa matriz confusão podemos verificar que
tivemos 79 verdadeiros positivos, 13 falsos positivos, 11 falsos negativos e 69 verdadeiros
negativos. Sendo assim, nosso melhor modelo continua sendo o de redes neurais para o Card1.




4.2 Card2
Para o card2 usamos o algoritmo MultlayerPerceptron, camada escondida "a" e finalizamos nossa
configuração segundo a tabela abaixo, sendo que para a relação época/tempo de aprendizagem
obtivemos uma taxa de erro associada, consideremos esta taxa em porcentagem(% de erro).

Épocas   Temp. Ap. 0.1   Temp. Ap. 0.2   Temp. Ap. 0.3   Temp. Ap. 0.4
100      20.3488         19.7674         21.5116         18.0233
200      20.9302         20.9302         21.5116         19.7674
300      21.5116         22.6744         22.093          18.6047
400      20.9302         22.6744         20.3488         19.7674
500      19.7674         23.2558         20.3488         19.186
600      20.3488         22.6744         20.9302         19.7674
700      20.3488         22.6744         20.9302         20.3488
800      20.3488         22.093          20.9302         21.5116
900      20.3488         21.5116         20.9302         23.2558
1000     20.3488         22.093          20.9302         23.2558

Em relação aos respectivos tempos de aprendizagem obtivemos os seguintes gráficos.
Como podemos constatar analisando nossa tabela e nossos gráficos nosso melhor modelo tem a
seguinte configuração com taxa de aprendizagem(learningRate) 0.4 e épocas(TrainingTime) 100.
Nosso melhor modelo apresenta os seguintes resultados, como podemos observar: 141 instancias
classificadas corretamente e 31 instancias classificadas incorretamente com taxa de erro de
18.0233%. Em nossa matriz confusão podemos verificar que tivemos 58 verdadeiros positivos, 15
falsos positivos, 16 falsos negativos e 83 verdadeiros negativos.




Na execução de nosso conjunto de teste sobre nosso melhor modelo os seguintes resultados são
encontrados, como podemos observar: 149 instancias classificadas corretamente e 24 instancias
classificadas incorretamente com taxa de erro de 13.8728%, sendo uma taxa aceitável, pois o limite
para o card2 é de 19.24 segundo padrões. Em nossa matriz confusão podemos verificar que tivemos
72 verdadeiros positivos, 15 falsos positivos, 9 falsos negativos e 77 verdadeiros negativos.
Ainda para o card2 usamos o algoritmo J4.8, nossa configuração segue a tabela abaixo, sendo que
para a relação do número de instancias mínimas nas folhas obtivemos um tamanho de árvore e uma
taxa de erro associada, consideremos esta taxa em porcentagem(% de erro).
Card2
Mínimo de instancias nas         Tamanho da árvore Erro associado
folhas
1                                45                   16.8605
2                                27                   18.6047
3                                15                   19.186
4                                11                   19.186
5                                9                    19.186

Em relação aos respectivos números mínimos de instancias nas folhas obtivemos o seguinte gráfico.




Como podemos constatar analisando nossa tabela e nosso gráfico, nosso melhor modelo tem a
seguinte configuração com número mínimo de instancias por folha igual a 1.
Nosso melhor modelo apresenta os seguintes resultados, como podemos observar: 143 instancias
classificadas corretamente e 29 instancias classificadas incorretamente com taxa de erro de
16.8605%. Em nossa matriz confusão podemos verificar que tivemos 59 verdadeiros positivos, 14
falsos positivos, 15 falsos negativos e 84 verdadeiros negativos.




Na execução de nosso conjunto de teste sobre nosso melhor modelo os seguintes resultados são
encontrados, como podemos observar: 152 instancias classificadas corretamente e 21 instancias
classificadas incorretamente com taxa de erro de 12.1387%, sendo uma taxa aceitável, pois o limite
para o card2 é de 19.24 segundo padrões. Em nossa matriz confusão podemos verificar que tivemos
72 verdadeiros positivos, 15 falsos positivos, 6 falsos negativos e 80 verdadeiros negativos. Sendo
assim, nosso melhor modelo é o de árvore de decisão para o Card2.




4.3 Card3
Para o card3 usamos o algoritmo MultlayerPerceptron, camada escondida "t" e finalizamos nossa
configuração segundo a tabela abaixo, sendo que para a relação época/tempo de aprendizagem
obtivemos uma taxa de erro associada, consideremos esta taxa em porcentagem(% de erro).

Épocas    Temp. Ap. 0.1   Temp. Ap. 0.2   Temp. Ap. 0.3   Temp. Ap. 0.4
100       19.186          19.7674         19.186          22.093
200       19.7674         19.186          19.7674         21.5116
300       20.3488         18.0233         18.0233         21.5116
400       19.186          16.2791         16.2791         22.093
500       18.0233         16.8605         18.0233         23.2558
600       17.4419         17.4419         18.6047         21.5116
700       17.4419         16.8605         19.186          20.9302
800       17.4419         18.0233         20.9302         20.9302
900       17.4419         18.0233         20.3488         21.5116
1000      18.0233         18.0233         22.093          22.093

Em relação aos respectivos tempos de aprendizagem obtivemos os seguintes gráficos.
Como podemos constatar analisando nossa tabela e nossos gráficos nosso melhor modelo tem a
seguinte configuração com taxa de aprendizagem(learningRate) 0.2 e épocas(TrainingTime) 400.
Nosso melhor modelo apresenta os seguintes resultados, como podemos observar: 144 instancias
classificadas corretamente e 28 instancias classificadas incorretamente com taxa de erro de
16.2791%. Em nossa matriz confusão podemos verificar que tivemos 62 verdadeiros positivos, 17
falsos positivos, 11 falsos negativos e 82 verdadeiros negativos.




Na execução de nosso conjunto de teste sobre nosso melhor modelo os seguintes resultados são
encontrados, como podemos observar: 152 instancias classificadas corretamente e 21 instancias
classificadas incorretamente com taxa de erro de 12.1387%, sendo uma taxa aceitável, pois o limite
para o card3 é de 14.42 segundo padrões. Em nossa matriz confusão podemos verificar que tivemos
67 verdadeiros positivos, 9 falsos positivos, 12 falsos negativos e 85 verdadeiros negativos.
Ainda para o card3 usamos o algoritmo J4.8, nossa configuração segue a tabela abaixo, sendo que
para a relação do número de instancias mínimas nas folhas obtivemos um tamanho de árvore e uma
taxa de erro associada, consideremos esta taxa em porcentagem(% de erro).
Card3
Mínimo de instancias nas         Tamanho da árvore Erro associado
folhas
1                                47                   18.6047
2                                39                   18.0233
3                                25                   19.186
4                                29                   17.4419
5                                21                   18.0233

Em relação aos respectivos números mínimos de instancias nas folhas obtivemos o seguinte gráfico.
Como podemos constatar analisando nossa tabela e nosso gráfico, nosso melhor modelo tem a
seguinte configuração com número mínimo de instancias por folha igual a 4.




Nosso melhor modelo apresenta os seguintes resultados, como podemos observar: 142 instancias
classificadas corretamente e 30 instancias classificadas incorretamente com taxa de erro de
17.4419%. Em nossa matriz confusão podemos verificar que tivemos 63 verdadeiros positivos, 16
falsos positivos, 14 falsos negativos e 79 verdadeiros negativos.
Na execução de nosso conjunto de teste sobre nosso melhor modelo os seguintes resultados são
encontrados, como podemos observar: 156 instancias classificadas corretamente e 17 instancias
classificadas incorretamente com taxa de erro de 9.8266%, sendo uma taxa aceitável, pois o limite
para o card3 é de 14.42 segundo padrões. Em nossa matriz confusão podemos verificar que tivemos
69 verdadeiros positivos, 7 falsos positivos, 10 falsos negativos e 87 verdadeiros negativos. Sendo
assim, nosso melhor modelo é o de árvore de decisão para o Card3.




5. Conclusão
Em nosso trabalho abordamos a problemática de classificação de padrões, escolhemos o problema
de análise de credito para executarmos nosso experimento, sendo que usamos as técnicas de
Inteligencia Artificial para resolvermos a identificação de quem estaria apto a receber credito ou não
através da criação de redes neurais e árvores de decisão, desenvolvemos nossa metodologia e a
aplicamos ao nosso problema com o uso da ferramenta Weka 3.7, criamos nossos modelos, geramos
tabelas e gráficos para efetuarmos análise e por fim elegemos nosso melhor modelo para o card1,
card2 e card3 e executamos nossos aquivos de teste sobre os modelos eleitos e depois comparamos
nossos resultados, conseguindo validar nossos modelos segundo os padrões de erro para cada card,
enfim obtivemos sucesso em nosso experimento, portanto este trabalho nos incentiva a continuar
estudando IA e seus incríveis métodos e conceitos usados para a resolução de problemas reais de
nossa sociedade.
Referencias
Alan Turing. Computing Machinery and Intelligence , visita em 24 de novembro de 2010.
http://www.filewatcher.com/b/ftp/ftp.cs.cuhk.hk/pub/proben1.0.0.html, visita em 8 de novembro
de 2010.
http://www.cs.waikato.ac.nz/ml/weka/, visita em 9 de novembro de 2010.
Prechelt, Lutz, Proben1 A Set of Neural Network Benchmark Problems and Benchmarking Rules,
September 30, 1994.

Weitere ähnliche Inhalte

Ähnlich wie Criando e aplicando modelos de redes neurais e árvores de decisão

Erro na aritmética de ponto flutuante
Erro na aritmética de ponto flutuanteErro na aritmética de ponto flutuante
Erro na aritmética de ponto flutuanteAlexandre Grossi
 
P spice guia_passo_a_passo
P spice guia_passo_a_passoP spice guia_passo_a_passo
P spice guia_passo_a_passobetoshaper
 
Reconhecimento de Placas
Reconhecimento de PlacasReconhecimento de Placas
Reconhecimento de PlacasVinicius Coelho
 
Proconf softwear confiabilidade
Proconf softwear confiabilidadeProconf softwear confiabilidade
Proconf softwear confiabilidadeErico Pontes Melo
 
Estrutura de Dados Apoio (Complexidade de Algoritmos)
Estrutura de Dados Apoio (Complexidade de Algoritmos)Estrutura de Dados Apoio (Complexidade de Algoritmos)
Estrutura de Dados Apoio (Complexidade de Algoritmos)Leinylson Fontinele
 
Uma introdução à mineração de informações
Uma introdução à mineração de informaçõesUma introdução à mineração de informações
Uma introdução à mineração de informaçõesFabrício Barth
 
Erro na aritmética de ponto flutuante
Erro na aritmética de ponto flutuanteErro na aritmética de ponto flutuante
Erro na aritmética de ponto flutuanteAlexandre Grossi
 
Apostila matemática aplicada
Apostila matemática aplicadaApostila matemática aplicada
Apostila matemática aplicadafernandao777
 
Curso CAT3D 2018. Registro e Fusão. PortalCheck
Curso CAT3D 2018. Registro e Fusão. PortalCheckCurso CAT3D 2018. Registro e Fusão. PortalCheck
Curso CAT3D 2018. Registro e Fusão. PortalCheckArmando Alaminos Bouza
 

Ähnlich wie Criando e aplicando modelos de redes neurais e árvores de decisão (12)

Erro na aritmética de ponto flutuante
Erro na aritmética de ponto flutuanteErro na aritmética de ponto flutuante
Erro na aritmética de ponto flutuante
 
Analise fatorial spss
Analise fatorial spssAnalise fatorial spss
Analise fatorial spss
 
P spice guia_passo_a_passo
P spice guia_passo_a_passoP spice guia_passo_a_passo
P spice guia_passo_a_passo
 
Tsg web mining
Tsg web miningTsg web mining
Tsg web mining
 
Cálculo numérico
Cálculo numéricoCálculo numérico
Cálculo numérico
 
Reconhecimento de Placas
Reconhecimento de PlacasReconhecimento de Placas
Reconhecimento de Placas
 
Proconf softwear confiabilidade
Proconf softwear confiabilidadeProconf softwear confiabilidade
Proconf softwear confiabilidade
 
Estrutura de Dados Apoio (Complexidade de Algoritmos)
Estrutura de Dados Apoio (Complexidade de Algoritmos)Estrutura de Dados Apoio (Complexidade de Algoritmos)
Estrutura de Dados Apoio (Complexidade de Algoritmos)
 
Uma introdução à mineração de informações
Uma introdução à mineração de informaçõesUma introdução à mineração de informações
Uma introdução à mineração de informações
 
Erro na aritmética de ponto flutuante
Erro na aritmética de ponto flutuanteErro na aritmética de ponto flutuante
Erro na aritmética de ponto flutuante
 
Apostila matemática aplicada
Apostila matemática aplicadaApostila matemática aplicada
Apostila matemática aplicada
 
Curso CAT3D 2018. Registro e Fusão. PortalCheck
Curso CAT3D 2018. Registro e Fusão. PortalCheckCurso CAT3D 2018. Registro e Fusão. PortalCheck
Curso CAT3D 2018. Registro e Fusão. PortalCheck
 

Mehr von UFPA

Proteção do consumidor no comércio eletrônico sob a ótica da teoria da confiança
Proteção do consumidor no comércio eletrônico sob a ótica da teoria da confiançaProteção do consumidor no comércio eletrônico sob a ótica da teoria da confiança
Proteção do consumidor no comércio eletrônico sob a ótica da teoria da confiançaUFPA
 
Relações de consumo em ambiente eletrônico
Relações de consumo em ambiente eletrônicoRelações de consumo em ambiente eletrônico
Relações de consumo em ambiente eletrônicoUFPA
 
Método de compressão de Huffman
Método de compressão de Huffman Método de compressão de Huffman
Método de compressão de Huffman UFPA
 
Ferramentas de monitoramento de redes de computadors
Ferramentas de monitoramento de redes de computadorsFerramentas de monitoramento de redes de computadors
Ferramentas de monitoramento de redes de computadorsUFPA
 
Diffserv (serviços diferenciados)
Diffserv (serviços diferenciados)Diffserv (serviços diferenciados)
Diffserv (serviços diferenciados)UFPA
 
Artigo
ArtigoArtigo
ArtigoUFPA
 
Trabalho de gerencia de redes.
Trabalho de gerencia de redes.Trabalho de gerencia de redes.
Trabalho de gerencia de redes.UFPA
 
Engenharia de Testes
Engenharia de TestesEngenharia de Testes
Engenharia de TestesUFPA
 
Plano Empreendedor - Concurso Santander
Plano Empreendedor - Concurso SantanderPlano Empreendedor - Concurso Santander
Plano Empreendedor - Concurso SantanderUFPA
 

Mehr von UFPA (9)

Proteção do consumidor no comércio eletrônico sob a ótica da teoria da confiança
Proteção do consumidor no comércio eletrônico sob a ótica da teoria da confiançaProteção do consumidor no comércio eletrônico sob a ótica da teoria da confiança
Proteção do consumidor no comércio eletrônico sob a ótica da teoria da confiança
 
Relações de consumo em ambiente eletrônico
Relações de consumo em ambiente eletrônicoRelações de consumo em ambiente eletrônico
Relações de consumo em ambiente eletrônico
 
Método de compressão de Huffman
Método de compressão de Huffman Método de compressão de Huffman
Método de compressão de Huffman
 
Ferramentas de monitoramento de redes de computadors
Ferramentas de monitoramento de redes de computadorsFerramentas de monitoramento de redes de computadors
Ferramentas de monitoramento de redes de computadors
 
Diffserv (serviços diferenciados)
Diffserv (serviços diferenciados)Diffserv (serviços diferenciados)
Diffserv (serviços diferenciados)
 
Artigo
ArtigoArtigo
Artigo
 
Trabalho de gerencia de redes.
Trabalho de gerencia de redes.Trabalho de gerencia de redes.
Trabalho de gerencia de redes.
 
Engenharia de Testes
Engenharia de TestesEngenharia de Testes
Engenharia de Testes
 
Plano Empreendedor - Concurso Santander
Plano Empreendedor - Concurso SantanderPlano Empreendedor - Concurso Santander
Plano Empreendedor - Concurso Santander
 

Criando e aplicando modelos de redes neurais e árvores de decisão

  • 1. Criando e aplicando modelos de redes neurais e árvores de decisão Danilo Dias1, Faculdade de Sistemas de Informação – Universidade Federal do Oeste do Pará (UFOPA) Santarém – PA – Brasil ¹danilohdds@gmail.com Abstract. This article aims to build neural network and tree models to real problems of our society, in this case we used the problem that deals with the analysis of credit, problems related to credit card companies and other financial institutions, their files will be used: card1, card2 and Card3, collection Proben1 real data, the simulator will be used Weka 3.7. Resumo. Este artigo pretende criar modelos de redes neurais e árvores de decisão para problemas reais de nossa sociedade, neste caso usaremos o problema que aborda a análise de credito, problemática relacionada a operadoras de cartões de credito e outras instituições financeiras, os respectivos arquivos usados serão: card1, card2 e card3, da coleção de dados reais Proben1, o simulador usado será o Weka 3.7. 1. Introdução O uso de tecnologia sempre deve servir para realizar uma função em nossa sociedade, ao longo de nossa história vimos surgir diversas formas de tecnologias, uma delas surgiu logo após a segunda guerra mundial, com o artigo "Computing Machinery and Intelligence" do matemático inglês Alan Turing[1] e teve como seus principais idealizadores os cientistas Herbert Simon, Allen Newell, John McCarthy, Warren McCulloch, Walter Pitts e Marvin Minsky, entre outros. O conceito propõe o uso de computadores simulando inteligência humana, baseado nisto surgi o termo Inteligencia Artificial, com o aparecimento de computadores modernos o conceito passou a se tornar uma ciência cada vez mais divulgada e usada para resoluções de problemas reais de nossa sociedade. Neste artigo pretendemos usar de conceitos de Inteligencia Artificial em nosso experimento, criação de modelos de redes neurais e árvores de decisão, escolhemos a problemática de análise de credito, neste caso vamos realizar uma série de simulações em banco de dados relacionado ao problema, procurando achar modelos mais eficientes com o uso de comparação entre eles. Na segunda parte deste artigo veremos a descrição da problemática em questão, num terceiro momento iremos abordar a metodologia que usaremos no experimento, na quarta etapa deste artigo iremos realizar o experimento com o uso de ferramenta apropriada, neste caso o Weka 3.7, apresentaremos nossos resultados através de gráficos e tabelas, e por último apresentamos nossas conclusões acerca de nosso trabalho. 2. Descrição da problemática Em nosso caso resolvemos escolher uma aplicação de classificação de padrões do Proben1, que é uma coleção de dados reais disponível na internet através do link:http://www.filewatcher.com/b/ftp/ftp.cs.cuhk.hk/pub/proben1.0.0.html ,neste diretório podemos encontrar várias bases de dados relacionadas a problemas como: diagnose de problemas do coração - heart; diagnose de diabetes - diabetes; diagnose de câncer da mama - cancer; análise de crédito - card entre outros. Em nosso caso escolhemos a problemática Card, que dispõe sobre a análise de credito, mas especificamente prever a aprovação ou não de um cartão de credito a um cliente, cada um representa um exemplo real de pedido de cartão de crédito e a saída descreve se o banco (ou instituição similar)deferiu o cartão de crédito ou não. O significado dos atributos individuais não é explicada por razões de incidência com 51 entradas, 2 saídas de 690 exemplos. Este conjunto de dados tem uma boa mistura de atributos: contínuo, nominal com um pequeno número de valores
  • 2. nominais e com maior número de valores. Existem também alguns valores faltando em 5% dos exemplos. 44% dos exemplos são positivos; entropia 0,99 bits por exemplo. Este conjunto de dados foi criado com base em "dados da análise de crédito " problema conjunto da UCI repositório de bases de dados de aprendizagem de máquina. 3. Metodologia usada no experimento Para nosso trabalho a prática mais aconselhada será investigar um conjunto de topologias da rede MLP e com diferentes valores de parâmetros na solução do problema e criação de árvores de decisão com o algoritmo J4.8 , usaremos o simulador Weka 3.7 para este experimento. Iremos pegar nossa base com 690 linhas de dados pra cada Card e a quebraremos em 50% para treinamento, 25% para validação e 25% para testes, após esta etapa faremos o uso de tabelas e gráficos para análise de nossas configurações, elegeremos então o nosso melhor modelo, ou seja nossa melhor configuração resultada da execução de nosso arquivo de validação sobre nosso arquivo de treinamento, isso será feito para os dois algoritmos. Só então faremos a validação de nosso melhor modelo através da execução de nosso conjunto de teste usando nosso melhor exemplar, ao final iremos efetuar a comparação entre nosso melhor modelo de rede neural com o de árvore de decisão. 4. Simulações e resultados Em nossa simulação usamos o Weka 3.7, para o nosso problema fizemos a separação do conjunto de dados para o card1, card2 e card3, para cada um deles configuramos três arquivos: treinamento.arff com 345 linhas de dados, validacao.arff com 173 e teste.arff com 172. 4.1 Card1 Para o card1 usamos o algoritmo MultlayerPerceptron, camada escondida "a" e finalizamos nossa configuração segundo a tabela abaixo, sendo que para a relação época/tempo de aprendizagem obtivemos uma taxa de erro associada, consideremos esta taxa em porcentagem(% de erro). Épocas Temp. Ap. 0.1 Temp. Ap. 0.2 Temp. Ap. 0.3 Temp. Ap. 0.4 100 9.8266 13.8728 12.1387 12.1387 200 15.0289 12.7168 15.0289 15.0289 300 15.6069 12.7168 15.0289 16.185 400 16.763 15.0289 14.4509 16.185 500 17.9191 18.4971 12.7168 16.185 600 16.763 17.341 13.8728 15.6069 700 17.341 16.763 15.0289 15.0289 800 17.341 16.763 15.6069 14.4509 900 16.185 16.763 15.0289 14.4509 1000 16.185 16.763 15.0289 13.8728 Em relação aos respectivos tempos de aprendizagem obtivemos os seguintes gráficos.
  • 3. Como podemos constatar analisando nossa tabela e nossos gráficos nosso melhor modelo tem a
  • 4. seguinte configuração com taxa de aprendizagem(learningRate) 0.1 e épocas(TrainingTime) 100. Nosso melhor modelo apresenta os seguintes resultados, como podemos observar: 156 instancias classificadas corretamente e 17 instancias classificadas incorretamente com taxa de erro de 9.8266%. Em nossa matriz confusão podemos verificar que tivemos 87 verdadeiros positivos, 11 falsos positivos, 6 falsos negativos e 69 verdadeiros negativos.
  • 5. Na execução de nosso conjunto de teste sobre nosso melhor modelo os seguintes resultados são encontrados, como podemos observar: 150 instancias classificadas corretamente e 22 instancias classificadas incorretamente com taxa de erro de 12.7907%, sendo uma taxa aceitável, pois o limite para o card1 é de 13.37 segundo padrões. Em nossa matriz confusão podemos verificar que tivemos 79 verdadeiros positivos, 13 falsos positivos, 9 falsos negativos e 71 verdadeiros negativos. Ainda para o card1 usamos o algoritmo J4.8, nossa configuração segue a tabela abaixo, sendo que
  • 6. para a relação do número de instancias mínimas nas folhas obtivemos um tamanho de árvore e uma taxa de erro associada, consideremos esta taxa em porcentagem(% de erro). Card1 Mínimo de instancias nas Tamanho da árvore Erro associado folhas 1 43 13.8728 2 39 12.1387 3 35 14.4509 4 27 12.7168 5 21 12.1387 Em relação aos respectivos números mínimos de instancias nas folhas obtivemos o seguinte gráfico. Como podemos constatar analisando nossa tabela e nosso gráfico, nosso melhor modelo tem a seguinte configuração com número mínimo de instancias por folha igual a 5.
  • 7. Nosso melhor modelo apresenta os seguintes resultados, como podemos observar: 152 instancias classificadas corretamente e 21 instancias classificadas incorretamente com taxa de erro de 12.1387%. Em nossa matriz confusão podemos verificar que tivemos 85 verdadeiros positivos, 13 falsos positivos, 8 falsos negativos e 67 verdadeiros negativos. Na execução de nosso conjunto de teste sobre nosso melhor modelo os seguintes resultados são encontrados, como podemos observar: 148 instancias classificadas corretamente e 24 instancias
  • 8. classificadas incorretamente com taxa de erro de 13.9535%, sendo uma taxa inaceitável, pois o limite para o card1 é de 13.37 segundo padrões. Em nossa matriz confusão podemos verificar que tivemos 79 verdadeiros positivos, 13 falsos positivos, 11 falsos negativos e 69 verdadeiros negativos. Sendo assim, nosso melhor modelo continua sendo o de redes neurais para o Card1. 4.2 Card2 Para o card2 usamos o algoritmo MultlayerPerceptron, camada escondida "a" e finalizamos nossa configuração segundo a tabela abaixo, sendo que para a relação época/tempo de aprendizagem obtivemos uma taxa de erro associada, consideremos esta taxa em porcentagem(% de erro). Épocas Temp. Ap. 0.1 Temp. Ap. 0.2 Temp. Ap. 0.3 Temp. Ap. 0.4 100 20.3488 19.7674 21.5116 18.0233 200 20.9302 20.9302 21.5116 19.7674 300 21.5116 22.6744 22.093 18.6047 400 20.9302 22.6744 20.3488 19.7674 500 19.7674 23.2558 20.3488 19.186 600 20.3488 22.6744 20.9302 19.7674 700 20.3488 22.6744 20.9302 20.3488 800 20.3488 22.093 20.9302 21.5116 900 20.3488 21.5116 20.9302 23.2558 1000 20.3488 22.093 20.9302 23.2558 Em relação aos respectivos tempos de aprendizagem obtivemos os seguintes gráficos.
  • 9. Como podemos constatar analisando nossa tabela e nossos gráficos nosso melhor modelo tem a seguinte configuração com taxa de aprendizagem(learningRate) 0.4 e épocas(TrainingTime) 100.
  • 10. Nosso melhor modelo apresenta os seguintes resultados, como podemos observar: 141 instancias classificadas corretamente e 31 instancias classificadas incorretamente com taxa de erro de
  • 11. 18.0233%. Em nossa matriz confusão podemos verificar que tivemos 58 verdadeiros positivos, 15 falsos positivos, 16 falsos negativos e 83 verdadeiros negativos. Na execução de nosso conjunto de teste sobre nosso melhor modelo os seguintes resultados são encontrados, como podemos observar: 149 instancias classificadas corretamente e 24 instancias classificadas incorretamente com taxa de erro de 13.8728%, sendo uma taxa aceitável, pois o limite para o card2 é de 19.24 segundo padrões. Em nossa matriz confusão podemos verificar que tivemos 72 verdadeiros positivos, 15 falsos positivos, 9 falsos negativos e 77 verdadeiros negativos.
  • 12. Ainda para o card2 usamos o algoritmo J4.8, nossa configuração segue a tabela abaixo, sendo que para a relação do número de instancias mínimas nas folhas obtivemos um tamanho de árvore e uma taxa de erro associada, consideremos esta taxa em porcentagem(% de erro). Card2 Mínimo de instancias nas Tamanho da árvore Erro associado folhas 1 45 16.8605 2 27 18.6047 3 15 19.186 4 11 19.186 5 9 19.186 Em relação aos respectivos números mínimos de instancias nas folhas obtivemos o seguinte gráfico. Como podemos constatar analisando nossa tabela e nosso gráfico, nosso melhor modelo tem a seguinte configuração com número mínimo de instancias por folha igual a 1.
  • 13. Nosso melhor modelo apresenta os seguintes resultados, como podemos observar: 143 instancias classificadas corretamente e 29 instancias classificadas incorretamente com taxa de erro de 16.8605%. Em nossa matriz confusão podemos verificar que tivemos 59 verdadeiros positivos, 14 falsos positivos, 15 falsos negativos e 84 verdadeiros negativos. Na execução de nosso conjunto de teste sobre nosso melhor modelo os seguintes resultados são encontrados, como podemos observar: 152 instancias classificadas corretamente e 21 instancias classificadas incorretamente com taxa de erro de 12.1387%, sendo uma taxa aceitável, pois o limite
  • 14. para o card2 é de 19.24 segundo padrões. Em nossa matriz confusão podemos verificar que tivemos 72 verdadeiros positivos, 15 falsos positivos, 6 falsos negativos e 80 verdadeiros negativos. Sendo assim, nosso melhor modelo é o de árvore de decisão para o Card2. 4.3 Card3 Para o card3 usamos o algoritmo MultlayerPerceptron, camada escondida "t" e finalizamos nossa configuração segundo a tabela abaixo, sendo que para a relação época/tempo de aprendizagem obtivemos uma taxa de erro associada, consideremos esta taxa em porcentagem(% de erro). Épocas Temp. Ap. 0.1 Temp. Ap. 0.2 Temp. Ap. 0.3 Temp. Ap. 0.4 100 19.186 19.7674 19.186 22.093 200 19.7674 19.186 19.7674 21.5116 300 20.3488 18.0233 18.0233 21.5116 400 19.186 16.2791 16.2791 22.093 500 18.0233 16.8605 18.0233 23.2558 600 17.4419 17.4419 18.6047 21.5116 700 17.4419 16.8605 19.186 20.9302 800 17.4419 18.0233 20.9302 20.9302 900 17.4419 18.0233 20.3488 21.5116 1000 18.0233 18.0233 22.093 22.093 Em relação aos respectivos tempos de aprendizagem obtivemos os seguintes gráficos.
  • 15. Como podemos constatar analisando nossa tabela e nossos gráficos nosso melhor modelo tem a seguinte configuração com taxa de aprendizagem(learningRate) 0.2 e épocas(TrainingTime) 400.
  • 16.
  • 17. Nosso melhor modelo apresenta os seguintes resultados, como podemos observar: 144 instancias classificadas corretamente e 28 instancias classificadas incorretamente com taxa de erro de 16.2791%. Em nossa matriz confusão podemos verificar que tivemos 62 verdadeiros positivos, 17 falsos positivos, 11 falsos negativos e 82 verdadeiros negativos. Na execução de nosso conjunto de teste sobre nosso melhor modelo os seguintes resultados são encontrados, como podemos observar: 152 instancias classificadas corretamente e 21 instancias classificadas incorretamente com taxa de erro de 12.1387%, sendo uma taxa aceitável, pois o limite para o card3 é de 14.42 segundo padrões. Em nossa matriz confusão podemos verificar que tivemos 67 verdadeiros positivos, 9 falsos positivos, 12 falsos negativos e 85 verdadeiros negativos.
  • 18. Ainda para o card3 usamos o algoritmo J4.8, nossa configuração segue a tabela abaixo, sendo que para a relação do número de instancias mínimas nas folhas obtivemos um tamanho de árvore e uma taxa de erro associada, consideremos esta taxa em porcentagem(% de erro). Card3 Mínimo de instancias nas Tamanho da árvore Erro associado folhas 1 47 18.6047 2 39 18.0233 3 25 19.186 4 29 17.4419 5 21 18.0233 Em relação aos respectivos números mínimos de instancias nas folhas obtivemos o seguinte gráfico.
  • 19. Como podemos constatar analisando nossa tabela e nosso gráfico, nosso melhor modelo tem a seguinte configuração com número mínimo de instancias por folha igual a 4. Nosso melhor modelo apresenta os seguintes resultados, como podemos observar: 142 instancias classificadas corretamente e 30 instancias classificadas incorretamente com taxa de erro de 17.4419%. Em nossa matriz confusão podemos verificar que tivemos 63 verdadeiros positivos, 16 falsos positivos, 14 falsos negativos e 79 verdadeiros negativos.
  • 20. Na execução de nosso conjunto de teste sobre nosso melhor modelo os seguintes resultados são encontrados, como podemos observar: 156 instancias classificadas corretamente e 17 instancias classificadas incorretamente com taxa de erro de 9.8266%, sendo uma taxa aceitável, pois o limite para o card3 é de 14.42 segundo padrões. Em nossa matriz confusão podemos verificar que tivemos 69 verdadeiros positivos, 7 falsos positivos, 10 falsos negativos e 87 verdadeiros negativos. Sendo assim, nosso melhor modelo é o de árvore de decisão para o Card3. 5. Conclusão Em nosso trabalho abordamos a problemática de classificação de padrões, escolhemos o problema de análise de credito para executarmos nosso experimento, sendo que usamos as técnicas de Inteligencia Artificial para resolvermos a identificação de quem estaria apto a receber credito ou não através da criação de redes neurais e árvores de decisão, desenvolvemos nossa metodologia e a aplicamos ao nosso problema com o uso da ferramenta Weka 3.7, criamos nossos modelos, geramos tabelas e gráficos para efetuarmos análise e por fim elegemos nosso melhor modelo para o card1, card2 e card3 e executamos nossos aquivos de teste sobre os modelos eleitos e depois comparamos nossos resultados, conseguindo validar nossos modelos segundo os padrões de erro para cada card, enfim obtivemos sucesso em nosso experimento, portanto este trabalho nos incentiva a continuar estudando IA e seus incríveis métodos e conceitos usados para a resolução de problemas reais de nossa sociedade.
  • 21. Referencias Alan Turing. Computing Machinery and Intelligence , visita em 24 de novembro de 2010. http://www.filewatcher.com/b/ftp/ftp.cs.cuhk.hk/pub/proben1.0.0.html, visita em 8 de novembro de 2010. http://www.cs.waikato.ac.nz/ml/weka/, visita em 9 de novembro de 2010. Prechelt, Lutz, Proben1 A Set of Neural Network Benchmark Problems and Benchmarking Rules, September 30, 1994.