• Nenhum resultado encontrado

4. Plataforma: Somente neste último passo uma plataforma tecnológica para o

3.4.2 Etapas envolvidas no processo KDD

Devido principalmente a uma grande variedade de problemas relativos aos diferentes tipos de bases de dados; uma padronização, ou metodologia única, para a Extração de Conhecimento de Base de Dados seria praticamente impossível. De acordo com a situação, surge a necessidade de adaptar novos enfoques e modos de abordagem. Na pretensão de expor uma visão geral, são descritas algumas considerações acerca de cada etapa do processo KDD.

Definição e compreensão do domínio: A definição dos objetivos a atingir é um dos aspectos fundamentais a serem avaliados para o êxito do processo de Extração de Conhecimento de BD. Essa definição é geralmente realizada pelos especialistas do domínio ou proprietários da Base de Dados, contando ainda com o apoio do especialista do processo KDD (normalmente o engenheiro de conhecimento do processo). A finalidade é definir o domínio da aplicação, o conhecimento prévio relevante, a viabilidade e custos da aplicação, duração do projeto, resultados esperados, e delimitar questões do tipo: - Quais são as metas? Quais critérios devem ser considerados? Qual a relação entre simplicidade e precisão de um conhecimento extraído? O que se deseja obter a partir dos resultados finais?. Essa interação deve resultar em uma documentação completa do domínio da aplicação, descrevendo todas as suas características, definição de objetivos, agenda de atividades, entre outros.

Seleção e/ou Criação da Base de Dados: Esta etapa consiste em selecionar, ou dependendo do caso criar uma Base de Dados. Isto envolve considerações de homogeneidade dos dados e identificação das fontes desses dados, as quais podem ser internas (e.g. bases de dados de departamento de produção, finanças, etc.) ou externas (e.g. Internet, livros, pesquisas etc.). Nesta etapa podem ser melhor identificados os gargalos do domínio, considerando, entre outros aspectos: viabilidade do projeto, tempo de execução, prováveis resultados esperados, etc.

Compreensão dos Dados: Para se obter um melhor entendimento do domínio da aplicação é importante interpretar os dados. Possíveis soluções incluem: consultas usando a linguagem/busca SQL (Structured Query Language); ferramentas OLAP (OnLine Analytical Processing) já objetivando um DW (Datawarehouse); representações gráficas; visualização dos dados; cálculos estatísticos; etc. É válido notar que a utilização de ferramentas visuais nesta etapa pode ser de grande ajuda para a percepção do ambiente de forma mais clara. A seguir é apresentado um exemplo de compreensão dos dados sobre um assunto genérico [Alex, 1999].

Seleção das Amostras mais Representativas: Esta etapa auxilia, principalmente, uma seleção de dados que consiga refletir com maior fidelidade a base de informação referente à amostra pretendida. Seleções de amostras pouco significativas podem resultar em padrões imprecisos ou sem valia, e até mesmo espúrios (como exemplo: “as pessoas que ficam grávidas são do sexo feminino”

ou “os maiores consumidores de pneus são os proprietários de veículos”). É importante observar que as pequenas amostras podem levar a conclusões incorretas, por outro lado, grandes quantidades de dados podem tornar o processamento lento e até mesmo inviável devido aos limites dos algoritmos de DM. Neste caso é primordial a ajuda do especialista do domínio em uma análise da situação, além da intervenção quanto à solução de questões como: - Quais as melhores estratégias para obtenção da amostra? - Os dados obtidos apresentam- se homogêneos? - Qual a dinâmica dos dados (os valores de atributos devem ser alterados sazonalmente)?. Pretendendo-se uma facilidade didática, a amostra representativa selecionada a partir da base de dados é comumente chamada de “conjunto de dados”.

Enriquecimento do Conjunto de Dados: Em certas ocasiões, é necessário agregar dados externos àqueles obtidos a partir da amostra mais representativa. Neste caso, adicionar informações como: número de filhos dos clientes, quantidade de bens próprios, endereço, sexo aliado ao nome das pessoas, informar a localidade de onde foi extraída a informação; visam enriquecer a base de dados. O objetivo aqui é, por exemplo, a segmentação ou delimitação do perfil dos clientes: saber qual o público alvo que se deve focar (no caso de descobrir os clientes mais rentáveis) ou evitar (como o envio de propagandas de absorventes destinadas a uma pessoa do sexo masculino). Algumas cadeias de lojas utilizam ainda esta informação para a propaganda direcionada ou cross-selling.

Limpeza do Conjunto de Dados: Quanto à “ruído” no conjunto de dados, são ocasionados principalmente por fatores como: interrupção da transação devido ao desligamento inadequado do sistema ou queda de energia e migração para outro sistema. Entre os vários aspectos que devem ser observados para proceder limpeza nos dados destacam-se: eliminação de registros duplicados (produzidos em geral pela captura dos mesmos dados de diferentes fontes); padronização do conteúdo dos registros (por exemplo, no caso do sexo das pessoas: M ou F, mas. ou fem., 0 ou 1); análise dos valores desconhecidos (para determinar ser mais adequado eliminar os registros que os contêm ou se ainda pode ser utilizada alguma técnica para o tratamento desses dados ausentes – missing values) [Alex, 1999].

Preparação do Conjunto de Dados: Esta etapa de preparação é determinada principalmente pela necessidade (ou não) de adequação do “conjunto de dados” à técnica ou função de Datamining a ser utilizada. Alguns aspectos relevantes na preparação do conjunto de dados são: simplificação dos valores (supressão dos zeros, dividindo-se por múltiplos de 10); agrupamentos de valores contínuos (chamando de grupo 1, por exemplo, as transações ocorridas no primeiro trimestre do ano, onde o segundo trimestre seria o grupo 2, e assim por diante); normalização dos dados (de forma a conterem valores dentro de um intervalo válido e aceito pela técnica de DM utilizada); entre outros. É válido aqui ressaltar que se a base de dados estiver contida em um Datawarehouse, problemas como preparação e limpeza nos dados podem ser em grande parte resolvidos, uma vez que o DW provê metodologias que entre outras promove a integração, padronização e sumarização dos dados. Uma leitura mais expressiva sobre Datawarehouse será vista no item 2.5 deste capítulo, ou pode ainda ser encontrada, em maior profundidade (em associação com Datamining) em Inmon [Inmon, 1996].

Escolha do Algoritmo de Datamining: Depois de criado o “conjunto de dados”, é necessário definir qual o melhor método de mineração a ser aplicado. Esta etapa tanto seleciona as metodologias que serão utilizadas para a detecção de “padrões” em dados; como decide quais modelos e parâmetros podem ser empregados em cada situação; enquadrando um método específico de DM e obedecendo todos os critérios do processo de KDD. As metodologias de DM podem ser realizadas de três diferentes formas [Carvalho, 2001]: não supervisionada (quando não se detém conhecimento acerca do assunto estudado, deixando que as ferramentas automáticas de DM procurem nos dados “novas” relações através de observações exaustivas); teste de hipótese (quando se possui algum conhecimento sobre o campo de atuação da empresa ou sobre a nova relação que se está buscando, pretendendo confirmá-la ou refutá-la); modelagem dos dados (quando se deseja avaliar ou intensificar o conhecimento da área e da relação analisada). As várias metodologias de mineração são geralmente agrupadas por “tarefas” ou “características” semelhantes. Qualquer uma das três possíveis metodologias do DM faz uso, basicamente, das mesmas técnicas para

sua realização. Estas técnicas são de caráter genérico e podem ser implementadas por meio de diferentes ferramentas como Redes Neurais Artificiais, Estatística, ou Inteligência Artificial Simbolista. Alguns autores descrevem um grande número de técnicas básicas, contudo, destacam-se: Associações, Classificação e Seqüência [Agrawal, 1993]; e ainda Link Analysis, Agrupamento, Detecção de desvios, Sumarização [Fayyad, 1996]. Existem inúmeros algoritmos que podem ser utilizados em Datamining. Em parte, estes algoritmos não são novos, mas sim originários de métodos estatísticos e de IA, devendo, contudo, ser adaptados para que possam tratar uma grande quantidade de dados em DM. As técnicas ou funções de DM serão ainda tratadas a seguir neste capítulo.

Dataminig: envolve a utilização de modelos apropriados de representação dos padrões e relações, identificados a partir dos dados (conforme mostrado na figura 3.1, nas etapas anteriores ao DM, dentro processo KDD). Deste modo, as etapas de definição, seleção e preparação de dados, mostradas até aqui, consistem na adequação de padrões de entrada dos algoritmos de Datamining. O resultado desses modelos aplicados, depois de avaliados pelo especialista e/ou usuário final, serão empregados com o objetivo da predição de novas situações baseadas em novos dados – demonstrando assim a iteração do processo [Fayyad, 1996]. Os modelos gerados por DM seguem, comumente, os padrões estatísticos, neurais ou simbólicos. Será dado maior enfoque à etapa de Datamining posteriormente, neste capítulo.

Avaliação do conhecimento extraído: o processo de KDD não termina quando os padrões nos dados de entrada são extraídos. É necessário que o usuário entenda e possa julgar a utilidade do conhecimento extraído, contrapondo-o com o conhecimento do especialista do domínio, ou contrastando-o com o objetivo de todo o processo de extração do conhecimento. Essa interação pode ainda facilitar a busca das causas de possíveis erros ocorridos ao longo de todo o processo. A avaliação do modelo é uma tarefa bastante complexa, que envolve, entre outros aspectos, a utilização de métodos para “filtrar” o conhecimento extraído, removendo padrões redundantes e desconsiderando resultados irrelevantes [Fayyad, 2000]. Estes métodos devem ser acompanhados de técnicas de visualização para auxiliar os usuários na filtragem dos padrões, bem como na

decisão sobre a utilidade/aplicabilidade do conhecimento extraído. Desta forma, dependendo da abordagem ou resultado pretendidos, pode-se fazer uso de algoritmos de DM que possuam uma elevada capacidade preditiva, mas pouca capacidade descritiva (simplicidade na representação do conhecimento).

Consolidação e utilização do Conhecimento Extraído: A consolidação do conhecimento extraído pressupõe a verificação e a solução de conflitos potenciais, quando comparado ao conhecimento existente antes do processo KDD ter sido iniciado. A partir daí, o conhecimento pode então ser simplesmente documentado e informado ao usuário; organizado pelo analista de KDD dentro de um modelo; ou ainda utilizado com o propósito de refinar o modelo até então existente. É importante destacar que as bases de dados são dinâmicas, sofrendo mudanças constantes ao longo do tempo, e modificando conjuntamente o conhecimento. Deste modo, o processo KDD é conseqüentemente dinâmico, sendo conveniente executá-lo periodicamente.