Minha Monografia V - Capítulo 1, parte 2

1.2.1 - Entrada de Dados


Como já dissemos anteriormente, os dados a serem minerados são introduzidos na forma de exemplos com atributos. Por exemplo, no caso de um laboratório meteorológico, cada registro do clima em uma determinada hora do dia, com informações sobre umidade do ar, velocidade do vento, temperatura, entre outros dados, é um exemplo. Formalmente, cada exemplo é chamado de instância. Obviamente, a base de dados a ser minerada deve conter uma quantidade considerável de instâncias.

Já os atributos são cada um dos valores que formam uma instância. Seguindo exemplo acima, umidade do ar, velocidade do vento e temperatura são atributos diferentes. Para a mineração ser realizada, não há a obrigatoriedade de que todos os atributos de todas as instâncias estejam disponíveis. Este é, inclusive, o cenário mais comum: podem haver informações que em determinada época não eram colhidas, outras que foram perdidas ou, até mesmo, informações cuja existência não tenha sentido em certas situações.


1.2.2 - Algoritmos


Estando a base de dados preparada para ser trabalhada, entram em cena os diversos algoritmos de mineração de dados. Existem vários algoritmos diferentes, cada um com suas características específicas. Não é correto afirmar que um algoritmo é melhor que outro, já que eles costumam ser aplicados em situações diferentes para tipos de dados diferentes. Há casos em que um único atributo é responsável para fornecer o conhecimento que se deseja encontrar e há outros em que deve haver uma intrincada combinação entre dezenas de atributos para que o conhecimento possa ser descoberto. E há, claro, dezenas de variações entre estes dois extremos, cada uma com suas próprias especificidades. Fica fácil, portanto, entender porque apenas um algoritmo se tornaria ineficaz para realizar a mineração em todas estas configurações.

É importante lembrar, também, que em cada uma das classificações de tipos de algoritmos de mineração de dados podem ser encontrados vários métodos diferentes.

As próximas subseções entram em detalhes sobre alguns tipos de algoritmos de mineração de dados.


1.2.2.1 - Inferência de Regras


A inferência de regras é o algoritmo mais simples de todos. Ele busca criar uma lista de regras que se baseiem em apenas um atributo, algo como "se o atributo K tiver o valor M, o resultado é Q".

Na execução deste algoritmo, são criados conjuntos de regras para vários atributos diferentes. Estes conjuntos são submetidos, então, a testes para verificar sua acurácia. O conjunto de regras com o menor índice de erros é adotado.

Obviamente, se um novo valor para o atributo surgir depois da criação do conjunto de regras, este será incapaz de prever seu resultado.


1.2.2.2 - Modelagem Estatística


Ao contrário do algoritmo de inferência de regras, a modelagem estatística leva em consideração todos os atributos da base de dados. Apesar de não ser muito realístico, por dar a mesma importância a todos os atributos, o que nem sempre é verdade, este método pode se mostrar mais eficaz do que outros mais sofisticados.

Já foi provado diversas vezes que a modelagem estatística rivaliza com, e às vezes até se mostra melhor do que, algoritmos classificadores em diversas bases de dados. A moral é: tente as coisas simples primeiro. Ao trabalhar com aprendizado de máquina, há casos frequentes de pessoas que sofrem um longo tempo para conseguir bons resultados com algoritmos sofisticados, apenas para descobrir algum tempo depois que métodos simples como inferência de regras ou modelagem estatística realizam o trabalho tão bem quanto - ou até melhor. (Witten, Frank, p. 96)

Seu funcionamento é bem simples: para cada um dos atributos da base de dados, é calculada uma fração que representa a proporção de cada um dos seus possíveis valores em relação aos possíveis resultados. Quando uma nova instância surge e deve ser classificada, a fração de cada um dos seus atributos em relação a um possível resultado é multiplicada. A classificação é dada de acordo com o resultado que obtiver o maior valor nas multiplicações.


1.2.2.3 - Dividir e Conquistar


O algoritmo de dividir e conquistar guarda uma certa semelhança com a inferência de regras, tendo em vista que cada uma de suas etapas leva em consideração apenas um atributo. Porém, para obter-se o resultado da classificação, os atributos são classificados recursivamente para criar regras mais complexas que formam as chamadas árvores de decisão.

O primeiro passo deste algoritmo é escolher um atributo e dividir a base de dados em grupos, sendo um para cada valor possível do atributo escolhido. Em seguida, em cada um destes grupos um novo atributo é escolhido e uma nova divisão é feita. O processo é repetido, então, até que todas as instâncias possam ser classificadas.

Além de poder classificar todas as instâncias, um outro objetivo deste algoritmo é ter o mínimo possível de subclassificações. Logo, a cada etapa é realizada uma espécie de inferência de regras para verificar a possibilidade de que uma determinada divisão da base de dados já aponte para uma classificação direta, sem a necessidade de novas subdivisões.


1.2.2.4 - Regras de Cobertura


O algoritmo de regras de cobertura é uma combinação do algoritmo de inferência de regras e o algoritmo de dividir e conquistar. Seu objetivo é criar regras que podem ser baseadas em um ou mais atributos, buscando sempre criar regras que levem em consideração o mínimo de atributos possíveis.

Em seu primeiro passo o algoritmo busca uma regra com base em um único algoritmo que consiga classificar corretamente o maior número possível de instâncias. O processo é repetido, então, no grupo de instâncias que não pôde ser classificado de acordo com a primeira regra. A partir daí o processo é executado novamente, até que todas as instâncias possam ser corretamente classificadas.

O conjunto de regras gerado, se representado graficamente, apresenta a forma de uma árvore de decisão degenerada, assemelhando-se mais a um processo de filtragem do que a um processo de opção de caminhos.


1.2.2.5 - Outros processos


Além destes quatro grandes grupos de algoritmos de mineração de dados, existem outros que acreditamos ser importante citar.

Mineração de Regras de Associação: enquanto os algoritmos de inferência de regras e de regras de cobertura busquem encontrar associações entre valores de atributos e determinados objetivos, os algoritmos de regras de associação buscam encontrar associações entre associações e valores de atributos ou associações entre associações. Exemplificando, estes algoritmos buscam encontrar regras que digam, por exemplo, que se os atributos D e F têm os valores G e H, então o atributo P terá o valor S.

Modelos Lineares: quando os atributos dos exemplos são numéricos, há algoritmos que buscam encontrar fórmulas que realizem cálculos sobre estes valores como forma de classificá-los.
Aprendizado por Instância: nos algoritmos deste tipo, nenhuma preparação é feita anteriormente sobre a base para criação de regras ou outro recurso similar. Quando uma instância precisa ser classificada, ela é passada por uma função de cálculo de distância, para verificar de qual instância da base de dados ela mais se aproxima. Este tipo de classificação é mais fácil de ser implementado quando os atributos das instâncias são valores numéricos.

Grupamentos: algoritmos de grupamento são utilizados quando não há classes a serem previstas, mas sim quando a intenção é apenas dividir as instâncias em grupos que "reflitam algum mecanismo por trás do domínio das instâncias, que faça com que algumas instâncias tenham maiores semelhanças umas com as outras do que com o restante das instâncias da base de dados". (Witten, Frank, p. 136)

Nenhum comentário: