5 PROCESSO DE IMPLEMENTAÇÃO DAS RNAs ESTUDO DE CASO
5.1 Descoberta de Conhecimento em Base de Dados (DCBD)
5.1.3 Transformação dos Dados
Para esta etapa, são aplicadas maneiras práticas para representar os dados, através de técnicas de redução de dimensionalidade, buscando-se uma redução da quantidade de variáveis no problema proposto, e ainda a criação de novos atributos a partir dos já existentes visando melhorar o processo de predição dos algoritmos. A normalização e a discretização estão entre as ações desta etapa (CORNELIUS JUNIOR, 2015).
A discretização é uma técnica que consiste em transformar valores numéricos em valores nominais ou discretos, podendo assim, representar de forma mais eficiente os dados de um atributo. A normalização dos dados, mais uma maneira de transformação de dados, consiste em adaptar valores para dentro de uma escala, com isso, reduzindo problema de discrepâncias de unidades de medidas. Com a normalização e a discretização, os dados ficam categorizados facilitando a sua aplicação em RNAs que realizam diversas operações matemáticas (CORNELIUS JUNIOR, 2015).
Para a discretização, o Weka conta com o filtro Discretize, exibido na Figura 18. Diversos parâmetros são exibidos, dentre eles: o índice do atributo (attributeIndices) indica o número de qual atributo vai ser utilizado e o bins que serve para especificar em quantas partes vai ser dividido os valores.
Figura 18 - Filtro Discretize
Fonte: AUTORES, 2018
Um exemplo de normalização e discretização é o que foi feito ao atributo “data de nascimento” contendo inúmeras datas distintas. Este atributo foi renomeado para “Faixa_etaria” e através de um cálculo da data de nascimento com a data atual (agosto 2018), buscou encontrar a idade e depois dividi-los em apenas cinco grupos: Menor_18, 18_a_29, 30_a_39, 40_a_49 e 50_ou_mais.
Quadro 2 - Relação de atributos e um resumo das transformações dos dados Atributo
original Atributo Final
Categorias do
atributo Transformação
Sexo Sexo Masculino
Feminino * Data de nascimento Faixa_etaria Menor_18 18_a_29 30_a_39 40_a_49 50_ou_mais
Alteração do nome do atributo e cálculo da idade (usando como data base agosto 2018) para divisão em 5 categorias.
Cor declarada Cor_declarada Amarela Branca Parda Preto *
Bairro Bairro 74 bairros *
Distancia_Km Ate_5 De_5_a_15 Superior_a_15
A partir dos atributos Bairro e Cidade, foi criado este novo atributo. Com o uso do CalcMaps7 dividiu-se em três grupos.
Turno Turno Vespertino
Noturno * Tipo escola nível médio Tipo_escola_NM Publica Privada Abreviação do atributo Forma de Ingresso Ingresso AC Cota_L1 Cota_L2 Cota_L3 Cota_L4
Abreviação do atributo e a junção das palavras das categorias do atributo As definições de cada atributo estão expostas no Anexo A.
Renda familiar
Renda_familiar_SM <=1,5 >1,5
Normalização e discretização da categoria em apenas duas. Qtd membros na família Qtde_membros_fa- milia 1 a 6 Abreviação do atributo
Auxilio Auxilio Sim
Não
*
Ira Ira *
Evadido Evadiu Sim
Não
Foi realizada a renomeação do atributo
Fonte: AUTORES, 2018
Nota: Símbolo * utilizado para identificar que não foi necessária a modificação.
Como mostrado no Quadro 2, várias transformações foram feitas na base de dados, sendo que algumas tiveram mais destaque, outras categorias não precisaram ser modificadas ou ajustadas.
A normalização feita nos atributos “Idade” e “Renda_familiar_SM”, onde se reduziu expressivamente a quantidade de categoria de atributos, facilita e reduz o tempo de processamento dos algoritmos de redes neurais. A escolha por apenas duas categorias no atributo “Renda_familiar_SM”, separando os que possuíam renda igual ou inferior a 1,5 salário mínimo e os que possuíam renda superior a 1,5 salário mínimo, levou em consideração o sistema de cotas utilizado para ingresso na instituição.
A criação de novos atributos a partir de atributos já existentes, também melhora o processamento e análise dos algoritmos de mineração. No caso do atributo “Distancia_Km”, no qual foi concebido com base nos atributos “Bairro” e “Cidade” vai ajudar na generalização para identificação final se “Evadiu”, reduzindo as categorias destes atributos de algumas dezenas, para apenas três (“Ate_5”, “De_5_a_15” e “Superior_a_15”).
7 Ferramenta on-line que possibilita calcular o raio de um círculo no Google Maps a partir de um ponto, neste caso o IFPA. Disponível em: https://www.calcmaps.com/pt/map-radius/.
A última etapa a ser efetuada, foi o balanceamento dos dados. Como já verificado, há uma discrepância muito alta entre os registros rotulados como “Evadiu” e os “Não Evadiu”. O desbalanceamento pode acarretar em sérios problemas durante o treinamento das técnicas das RNA, levando a classificar melhor, aquela classe que possui maior quantidade de registros em detrimento da outra, com poucos registros para o modelo (SANTOS, 2015). Deste modo, rastreou-se e eliminou-se aqueles registros que apresentavam dados semelhantes em 8 (oito) ou mais atributos, sendo excluído 194 registros do total.
A base de dados final ficou composta por 14 atributos e 107 registros, sendo destes, 15 (14%) rotulados como “Evadiu” e 92 (86%) rotulado como “Não Evadiu”. Apesar de não ter se chegado a um balanceamento ideal, divisão próxima dos 50% entre as duas classes, a redução da diferença já proporciona ganhos satisfatórios para o treinamento e aplicação das técnicas.
Por fim, para a base de dados pode ser usada pelos softwares de mineração de dados é necessária a conversão do arquivo para o formato ARFF. Deste modo, utilizou-se a própria ferramenta Weka. Através do modo Explorer do Weka, usou-se o comando “Save...” (Salvar), que permitiu salvar o arquivo no formato ARFF.
Figura 19 - Tela do Weka com a base de dados aberta exibindo informações
Finalizada esta etapa, temos na Figura 19, a base de dados aberta. Pronta para ser utilizada pelos algoritmos de classificação e com várias informações da mesma, dentre elas: o nome da base de dados; quantidade de atributos; total de instâncias; relação com os nomes dos atributos, tipos e classes que o compõe; e por último, um gráfico ilustrando a proporção de instancias em cada categoria daquela classe.
Uma visão geral dos dados encontrados na base de dados é apresentada no Gráfico 2. De forma hierárquica, são exibidas as duas classes com os respectivos atributos, e logo após as categorias de cada um atributo com as suas devidas proporções. Na classe “Evadiu”, principal alvo deste estudo, conseguimos visualizar que a maioria dos alunos são de cor parda (79%), o sexo masculino representa mais que o dobro (68%) em comparação com o feminino (32%), a faixa etária de 18_a_29 com 58% e a faixa de 30_a_39 42% concentram todos os alunos desta classe, 63% dos alunos são provenientes do ensino público, a mesma proporção anterior é encontrada nos alunos que estudam de noite e os que estudam a tarde, assim como na categoria renda familiar, onde as mesmas frações se repetem com 63% dos alunos tendo uma renda familiar superior a 1,5 salário mínimo e o restante com renda igual ou inferior a 1,5 salário mínimo, e por fim, 42% residem a uma distância da universidade de 5 a 15 km.
Do lado oposto da classe “Evadiu” no Gráfico 2, temos a classe “Não Evadiu”, onde se consegue visualizar que a maior parte destes alunos são de cor parda (69%), possuem renda familiar acima de 1,5 salário mínimo (75%), provenientes do ensino público (72%), com uma distribuição quase igualitária entre os turnos vespertino e noturno, 90% estão concentrados até 15 km de distância da faculdade, predominantemente composto por homens (83%), e mais da metade destes discentes pertencem a faixa etária dos 18 a 29 anos.
Gráfico 2 - Vista Hierárquica das informações
Fonte: AUTORES, 2018
É importante ressaltar que a base de dados usada neste trabalho possui limitações e que podem não gerar resultados satisfatórios. Em relação as categorias, não se conseguiu incluir na solicitação feita ao IFPA algumas que poderiam ser muito úteis no processo de predição, tais como: se o aluno trabalha em dois turnos, se tem filhos, se é casado ou solteiro, e se ele é arrimo de família (aquele que sustenta a família). Outro item bastante relevante, é a quantidade de amostras, que com apenas 107 registros compondo a base de dados, pode não ser o suficiente para as técnicas
construírem seus modelos de predição e posteriormente, nos testes conseguirem satisfatoriamente classificar corretamente as duas classes.
Com a base de dados já pré-processada, transformada e gerado o arquivo ARFF, segue-se para a etapa seguinte. Etapa essa, que tem a função de gerar resultados numéricos. E estes resultados, serão exaustivamente analisados, gerando o conhecimento.