Minerao de Dados: classificando o solo quanto ao teor de
gua presente nestes.
Adriel dos Santos Arajo Sistemas de Informao Universidade Federal de Mato Grosso (UFMT) araujo.adrielsantos@gmail.com 1. Introduo Vivemos em uma sociedade onde o dado valioso, pois este gera a informao, o conhecimento. Cada vez mais organizaes se empenham em capturar, armazenar e organizar grandes quantidades de dados. O objetivo? Extrair informaes teis deste emaranhado de dados. Neste contexto entra a Minerao de Dados. Temos a Minerao de Dados, do ingls Data Mining (DM) como uma importante ferramenta na extrao do conhecimento, capaz de revelar estruturas de conhecimento que, a olho nu, isto , pela capacidade humana, seria praticamente impossvel de serem descobertas devido ao grande volume de dados. Portanto, podemos entender a DM como uma tcnica de explorao e/ou extrao de conhecimentos em grandes volumes de dados, reconhecendo padres e regras que tendem a ocorrer em determinada ocasio. Diante de tal volume de dados, algumas tcnicas so utilizadas em seu tratamento, como a classificao, responsvel pela separao em grupos, classificando os dados levando em considerao a covarincia entre estes, isto , reconhecendo e determinando determinado padro ali existente e atribuindo-os a uma classe. Neste trabalho busca-se, atravs de tcnicas de minerao de dados classificar tipos de solo quanto sua umidade. O conhecimento desta ltima tida como uma importante informao pois indica em que condies hdricas encontra-se o solo. Atualmente tal classificao se d por sensores capazes de medir o nvel do teor de gua no solo. Alguns mtodos de classificao, chamados de supervisionados, requerem uma seleo prvia de algumas variveis, neste caso, a taxa de umidade de cada solo. Para tal usaremos algoritmos de classificao supervisionada e induo por rvore de deciso, que estabelecem, baseando-se na base de dados, regras para que determinada instancia pertena a uma classe, tendo em considerao todos os seus atributos. Uma das ferramentas de fcil acesso e amplamente utilizada na minerao de dados o Waikato Environment for Knowledge Analysis (WEKA), um software implementado pela Universidade de Waikato, na Nova Zelndia, escrito em Java, que agrega diversos algoritmos destinados anlise computacional e estatstica dos dados a partir dos padres encontrados gerando regras e hipteses. 2. Materiais e Mtodos Atualmente a forma mais utilizada para classificao da umidade de um solo baseia-se no uso de sensores implantados em um solo. Tais sensores so capazes de medir o teor de gua de um solo dividindo a massa da gua contida neste pela massa de solo seco entrada em determinada amostra. A proposta deste trabalho, classificao da umidade de um solo utilizando imagens, pretende avaliar a viabilidade eficincia de um novo modelo de classificao para este segmento. Esse novo modelo promover diminuio de custos com equipamentos de medio e instalao deste, sendo mais flexvel, exigindo apenas um meio de captura de imagens. No estudo foram utilizados imagens, cedidas pelo departamento de Engenharia Agrcola e Ambiental/ICAT/UFMT/CUR. A captura dessas imagens seguiu um protocolo desenvolvido em conjunto por docentes e discentes do curso. As imagens retratam amostras de solo em diferentes nveis de teor de gua. As taxas de umidade encontradas nas imagens das amostras do solo so: 0 % de teor de gua (solo totalmente seco); 75% de teor de gua (solo parcialmente seco); 100% de teor de gua (solo completamente mido). A primeira etapa deste estudo a extrao de caractersticas das imagens. Essa extrao gera dados que compem uma base a ser utilizada pelo WEKA na fase de classificao. Para extrair caractersticas das imagens, foram implementadas funes geoestatsticas capazes de quantificar a covarincia, isto , a inter-relao entre dois pontos, medindo eventos ocorridos em um localizao que tendem a ter comportamento igual ou similar nas vizinhanas. As funes aqui utilizadas so: ndice de Moran e Coeficiente de Geary. De acordo com BRAZ JR, o ndice de Moran um dos indicadores mais antigos de auto correlao espacial e aplicado s zonas ou pontos que tm variveis contnuas associadas as suas intensidades. Pontos vizinhos com valores similares indicam grande auto correlao. O Coeficiente de Geary tem caractersticas semelhantes Moran, contudo mais sensvel s pequenas diferenas entre as vizinhanas, pois leva em considerao o desvio padro de cada posio, neste caso pixel. Em contra partida, o ndice de Moran considera o produto do desvio padro de toda a imagem pela mdia. A implementao e execuo destas duas funes geoestatsticas gerou um conjunto de 80 caractersticas para cada imagem, sendo 40 para cada funo (Moran e Geary). Tais caractersticas so utilizadas como atributos no WEKA. Este conjunto de caractersticas se deu percorrendo a imagem, pixel pixel, em quatro sentidos diferentes com intervalos que variam de 0 10 pixels, gerando assim quarenta caractersticas para cada funo geoestatstica utilizada em cada imagem. Uma vez obtidas as caractersticas, inicia-se a etapa relativa minerao, utilizando o WEKA. Nesta fase foram realizados testes utilizando algoritmos de rvore de deciso. Os testes principais ocorreram em torno do Naive Bayes Tree Cassifier NBTree e Best-First Decision Tree Classifier, BFTree. Foi utilizado o seguinte protocolo de execuo de minerao de dados, considerando os seguintes passos: 1. Executar minerao baseada em BFTree em duas rodadas: a. Cross Validation com taxa de 10 folds b. Percentage Split com taxa de 70% de instncias destinadas ao treino 2. Executar minerao baseada em NBTree, tambm em duas rodadas: a. Cross Validation com taxa de 10 folds b. Percentage Split com taxa de 70% de instncias destinadas ao treino Aps estas quatro execues, formalizou-se tambm um protocolo de anlise e comparao dos resultados obtidos, destes, dois baseados no algoritmos e dois baseados no mtodo utilizado (Cross Validation ou Percentage Split ), so eles: 1. Baseados em Algoritmos a. BFTree Cross Validation X BFTree Percentage Split (Comparando Resultados BFTree em diferentes mtodos de execuo) b. Naive Bayes Cross Validation X Naive Bayes Percentage Split (Comparando Resultados Naive Bayes em diferentes mtodos de exeuo) 2. Baseados em mtodo de execuo da minerao. a. BFTree Cross Validation X Naive Bayes Cross Validation (Comparando resultados de ambos algoritmos sob o mtodo Cross Validation) b. BFTree Percentage Split X Naive Bayes Percentage Split (Comparando resultados de ambos algoritmos sob o mtodo Percentage Split) Durante a anlise e comparao dos resultados foram considerados alguns ndices e apresentaes tidos como fundamentais neste processo, basicamente quatro, so eles: 1. Correctly Classified Instances - CCI (Instncias Classificadas Corretamente); 2. Incorrectly Classified Instances - ICI (Instncias Classificadas Incorretamente); 3. Estatstica Kappa; 4. Matriz de Confuso. Por CCI, como o prprio nome sugere, podemos entender como o ndice responsvel por apresentar a quantificao de instncias classificadas corretamente. Este ndice apresentado tanto em porcentagem de acertos quanto em quantidade de corretas classificaes. Quanto mais prximo dos 100% ou do nmero total de instncias, melhor. Em contrapartida podemos entender de ICI exatamente o oposto, ou seja, ele apresenta o ndice de quantificao de instncias classificadas incorretamente durante o processo de minerao. Tambm apresentado de duas formas, sendo a primeira a quantidade de erros totais e a segunda uma porcentagem de erros obtidos em todo o conjunto de instncias. Ao contrrio do CCI, o ICI melhor o apresentando com um nmero baixo, isto , quanto mais prximo de 0 ou 0%, melhor. A Estatstica Kappa define uma de proximidade da quantidade de observaes se aproximam daquelas esperadas, isto , um ndice que expressa o quo legtima foi uma interpretao, ou, nesse caso, uma execuo de minerao utilizando determinado classificador. A estatstica capa dada entre 0 e 1 e quanto maior, ou seja, mais prximo de 1 melhor foi a classificao. Pode-se considerar as seguintes concordncias para cada faixa: Valor de Kappa Concordncia 0 Pobre 0 0,20 Ligeira 0,21 0,40 Considervel 0,41 0,60 Moderada 0,61 0,80 Substancial 0,81 1 Excelente Outro ndice bastante utilizado para anlise de resultados em minerao de dados a matriz de confuso. Ao contrrio do que o nome sugere, o seu entendimento claro e pontual, uma vez entendido a sua forma de funcionamento, e fornece informaes bastantes teis para a esta anlise. Podemos definir algumas regras ou passos para correta anlise da Matriz de confuso: a. As instncias corretamente classificadas so encontradas na Diagonal Principal da matriz, para cada classe. b. As instncias acima e abaixo da diagonal principal indicam as instncias classificadas incorretamente para cada classe. Vejamos o exemplo a seguir: CLASSE 1 CLASSE 2 CLASSE 3 CLASSE 1 43 3 4 CLASSE 2 5 40 5 CLASSE 3 8 0 42 Realizando a anlise da seguinte matriz de confuso, podemos extrair as seguintes informaes: Para a Classe 1: o 43 instncias classificadas corretamente; o 03 instncias classificadas como Classe 2; o 04 instncias classificadas como Classe 3. Para a Classe 2: o 40 instncias classificadas corretamente; o 05 instncias classificadas como Classe 1; o 05 instncias classificadas como Classe 3. Para a Classe 3: o 42 instncias classificadas corretamente; o 08 instncias classificadas como Classe 1; o 00 instncias classificadas como Classe 2 Total de instncias classificadas corretamente: 125 Total de instncias classificadas incorretamente: 25 3. Algoritmo de Classificao Best First Tree Classifier De acordo com MACHADO, O BFTree um algoritmo que se assemelha ao classificador J48 (no abordado neste estudo) no que diz respeito ao modelo de rvore de deciso criado. Ambos constroem um modelo de rvore de deciso atravs de vrias iteraes, baseando-se em um conjunto de dados para treinamento e outro para teste. A cada iterao o algoritmo seleciona o atributo que melhor diferencia os dados com a base no ganho da informao e separa o conjunto em duas partes at que restem apenas ns folhas, ou seja, a classificao A diferena que o BFTree realiza uma busca no espao de subconjuntos de atributos atravs de mtodos como o hillclimbing, acrescido de um facilitador de backtracking. [WITTEN E FRANK]. 4. Algoritmo de Classificao Naives Bayes Tree Classifier De acordo com MAYA E SOUZA, Naive Bayes um mtodo de classificao baseado em inferncia bayesiana. Trabalha com dados contnuos e discretos. indicado para dados discretos os valores de probabilidades so coletados atravs da contagem nos grupos dos documentos. A proposta do algoritmo NBTree juntar a eficincia e velocidade das arvores de deciso em conjuntos de dados maiores, com a preciso da Naive-Bayes [Witten e Frank 2005]. 5. Discusso e Resultados. O protocolo definido para execuo de testes foi seguido com sucesso. Os algoritmos trouxeram resultados satisfatrios, chegando ndices de at 80%, aproximadamente, de instncias classificadas corretamente. Foram consideradas trs classes e dois algoritmos foram executados sobre a base de atributos. Realizando uma anlise de acordo com as abordagens estabelecidas no protocolo podemos encontrar alguns resultados interessantes, principalmente analisando as matrizes de confuso geradas como sada da execuo dos classificadores. Abaixo segue quatro matrizes, cada uma referente uma execuo: Os resultados so expostos em grficos e tabelas abaixo com algumas consideraes: 5.1 Matriz de Confuso: BFTree Cross Compilation Pode-se concluir que a maior incidncia de erros se concentra na classificao de instncias de 100% de umidade, dessas 45 instncias foram classificadas, erroneamente como sendo da classe 75. Classe 0: Classificadas corretamente: 178 instncias Classificadas como Classe 75: 17 instncias Classificadas como Classe 100: 13 instncias Classe 75: Classificadas corretamente: 178 Classificadas como Classe 0: 15 instncias Classificadas como Classe 100: 30 instncias Classe 100: 0 75 100 0 178 17 13 75 15 163 30 10 0 19 45 144 Classificadas corretamente: 178 instncias Classificadas como Classe 0: 19 instncias Classificadas como Classe 75: 45 instncias 5.2 Matriz de Confuso: BFTree Percentage Split Aqui a maior concentrao de erros tambm se deu entre as classes 75 e 100. Onze instncias foram classificadas como Classe 100 e so classe 75. O mesmo tambm ocorreu com tambm com a Classe 100, tendo 11 de suas instncias classificadas como Classe 75. Classe 0: Classificadas Corretamente: 56 instncias Classificadas como Classe 75:1 instncias Classificadas como Classe 100: 4 instncias Classe 75: Classificadas corretamente: 40 instncias Classificadas como Classe 0: 5 instncias Classificadas como Classe 100: 11 instncias Classe 100: Classificadas corretamente: 49 instncias Classificadas como classe 0: 10 instncias Classificadas como classe 75: 11 instncias 5.3 Matriz de Confuso: NBTree Cross Validation Novamente conclui-se maior concentrao de erros entre as classes 75 e 100 0 75 100 0 173 17 18 75 13 153 42 10 0 24 53 131 0 75 100 0 56 1 4 75 5 40 11 10 0 10 11 49 Classe 0: Classificadas corretamente: 173 instncias Classificadas como Classe 75: 17 instncias Classificadas como Classe 100: 18 instncias Classe 75: Classificadas corretamente: 153 instncias Classificadas como classe 0: 13 instncias Classificadas como classe 100: 42 instncias Classe 100: Classificadas corretamente: 131 instncias Classificadas como classe 0: 24 instncias Classificadas como classe 75: 53 instncias 5.4 Matriz de Confuso: NBTree Percentage Split Embora o classificador NBTree rodando sobre Percentage Split tenha apresentado melhor resultado comparado aos demais, a maior concentrao de erros tambm se encontra entre as classes 75 e 100. Classe 0: Classificadas corretamente: 57 instncias Classificadas como Classe 75: 2 instncias Classificadas como Classe 100: 52 instncias Classe 75: Classificadas corretamente: 41 instncias Classificas como Classe 0: 5: instncias Classificadas como Classe 100: 10 instncias 0 75 100 0 57 2 2 75 5 41 10 10 0 6 12 52 Classe 100: Classificadas corretamente: 52 instncias Classificadas como Classe 0: 6 instncias Classificadas como Classe 75: 12 instncias 5.5 Anlise Baseada em Algoritmo: BFTree: Aqui conclumos que o algoritmo BFTree retornou melhores resultados executando sobre o mtodo Cross Validation. Figura 1. Comparativo CCI o entre Percentage Split e Cross Validation. Algortmo utilizado: BFTree. Figura 2. Comparativo ICI entre Percentage Split e Cross Validation. Algortmo utilizado: BFTree. Figura 3. Comparativo KAPPA entre Percentage Split e Cross Validation. Algortmo utilizado: BFTree. 5.6 Anlise Baseada em Algoritmo: NBTree: Aqui conclumos que das duas execues do algoritmo NFTree a execuo que utilizou o mtodo Percentage Split apresentou resultados significativamente melhores. Figura 4. Comparativo CCI entre Percentage Split e Cross Validation. Algortmo utilizado: NBTree. Figura 5. Comparativo ICI entre Percentage Split e Cross Validation. Algortmo utilizado: NBTree. Figura 6. Comparativo KAPPA entre Percentage Split e Cross Validation. Algortmo utilizado: NBTree. 5.7 Anlise Baseada em Mtodo de Execuo: Cross Validation: Esta comparao, baseada no mtodo de execuo Cross Validation, ressaltou um fato interessante: embora, de forma global, o Naives Bayes retornou resultados consideravelmente melhores, se consideramos apenas o mtodo de execuo Cross Validation, o BFTree se sobressaiu ao NBTree. Conclui-se ento que o Naives Bayes no to eficiente, se comparado ao Best First, quando executa sobre o mtodo Cross Validation. Confira os grficos: Figura 7. Comparativo CCI entre NBTree e BFTree. Mtodo utilizado: Cross Validation. Figura 8. Comparativo ICI entre NBTree e BFTree. Mtodo utilizado: Cross Validation. Figura 9. Comparativo KAPPA entre NBTree e BFTree. Mtodo utilizado: Cross Validation. 5.8 Anlise Baseada em Mtodo de Execuo: Percentage Split: Por fim, podemos constatar aqui que o classificador Naives Bayes executando sobre o mtodo Percentage Split foi o classificador que mais aprsentou resultados relevantes. Chegando a ser cerca de 7% melhor, no que diz respeito correta classificao, se comparado aos demais.
Figura 10. Comparativo CCI entre NBTree e BFTree. Mtodo utilizado: Percentage Split. Figura 11. Comparativo ICI entre NBTree e BFTree. Mtodo utilizado: Percentage Split. Figura 12. Comparativo Kappa entre NBTree e BFTree. Mtodo utilizado: Percentage Split. 6. Concluso Sendo esta uma etapa inicial, caracterizada pela anlise da viabilidade da aplicao conclui-se que os resultados foram significativamente satisfatrios, atingindo cerca de 80% de acertos na melhor das execues o que apontam a pesquisa como promissora. Como prximas etapas busca-se extrair caractersticas mais precisas de forma a melhorar a classificao, em especial das classes 75 e 100 que demonstraram maior taxa de erro em todos os casos de teste. Como etapa futura tambm entra a extrao de caractersticas de mais duas classes, 25 e 50, que represemto, respectivamente, 25% e 50% de umidade no solo. Novos classificadores tambm sero testados a fim de encontrar o melhor caso de uso. Referncias BRAZ JUNIOR, Geraldo. (2008) Classificaes de Regies de Mamografia em Massa e No Massa usando estatstica espacial e Maquia de Vetores de Suporte CORTEZ, Srgio da Costa (2002) Minerao de Dados Funcionalidades, Tcnicas e Abordagens. Michael Abernethy, (2010) Minerao de dados com WEKA, Parte 1: Introduo e regresso, in: IBM Developer Works: http://www.ibm.com/developerworks/br/opensource/library/os-weka1/ Maro 2014 CIENTEC, Umidade do solo in: Cientec Consultoria e Desenvolvimento de Sistemas: http://www.cientec.net/cientec/InformacoesTecnicas_Irriga/Solo_UmidadedoSolo.as p Maro 2014; Mtodos para Estimao de Reprodutividade de Medidas, Faculdade de Medicina do Porto. In: http://users.med.up.pt/joakim/intromed/estatisticakappa.htm Maro 2014 MAIA, Luiz Claudio Gomes; SOUZA, Renato Rocha. (2010) Uso de sintagmas nominais na classificao automtica de documentos eletrnicos MACHADO, Marcos Rafael (2007) Modelo para a Determinao dos Perfis de Estudantes em Sistemas Web WITTEN, I. H. e FRANK, E. (2005) Data Mining: Practical Machine Learning tools and techniques 2nd edition