0 UNIVERSIDADE DO EXTREMO SUL CATARINENSE - UNESC MBA EM GESTÃO DE BANCO DE DADOS EVANDRO LONGO DA SILVA ESTUDO DO PERFIL DO CONSUMIDOR DE MEDICAMENTOS POR REGIÃO, COM BASE EM INFORMAÇÕES DE VENDA DE MEDICAMENTOS. Criciúma, agosto de 2005 1 UNIVERSIDADE DO EXTREMO SUL CATARINENSE - UNESC MBA EM GESTÃO DE BANCO DE DADOS EVANDRO LONGO DA SILVA ESTUDO DO PERFIL DO CONSUMIDOR DE MEDICAMENTOS POR REGIÃO, COM BASE EM INFORMAÇÕES DE VENDA DE MEDICAMENTOS. Monografia apresentada a Diretoria de Pós-Graduação da Universidade do Extremo Sul Catarinense – UNESC, para a obtenção do título de especialista em MBA em Administração de banco de Dados Orientador: Prof. Mestre Carlos Fernando Barbosa Bus Criciúma, agosto de 2005 2 Dedicatória Aos meus pais Vilson e Luzia, aos meus irmãos, a minha noiva Cristiane e ao meu grande amigo Ederson. 3 Agradecimentos Agradeço primeiramente a Deus, que me deu forças e saúde para enfrentar mais esta etapa. Em especial agradeço aos meus pais e familiares, pela compreensão nas horas de ausência, pelo apoio nos momentos de dúvida e paciência nas horas de cansaço. Ao meu querido orientador Professor Carlos Fernando Barbosa Buss, pelas pacientes horas de colaboração, até mesmo pelos poucos minutos de conversa, que de alguma forma sempre me deu força para concluir este trabalho. E especialmente ao meu enorme amigo Ederson, que compartilhou boa parte dos momentos vividos durante todo percurso da pós-graduação e se manteve companheiro dede os trabalhos de sala até as baladas. 4 RESUMO O conhecimento do público alvo de uma empresa se faz necessário, para que as empresas possam aperfeiçoar suas campanhas de marketing e obterem um maior retorno de investimento. Dentre outras finalidades, o datamining é utilizado justamente para isso: definir entre os clientes, quais são os mais prováveis a adquirir um novo produto ou serviço, é o que se chama de marketing direcionado. A logística de mercado é um fator muito importante e que pode ter muito mais eficiência quando se conhece o perfil dos clientes. Não somente para obter retorno financeiro o datamining é utilizado. Possibilidades de proporcionar um melhoramento na qualidade de vida da população também podem ser conseguidas com técnicas de mineração de dados. Identificar as regiões com índices de consumo de determinados tipos de medicamentos, possibilitando entidades efetuarem campanhas de prevenção e controle de doenças, estão focadas neste trabalho. Palavras-chave: Mineração de dados. Data warehouse. Medicamentos. Perfil consumidor. ABSTRACT The knowledge of the white public of a company if makes necessary, so that the companies can perfect its campaigns of marketing and get a bigger return of investment. Amongst other purposes, datamining is used exactly for this: to define between the customers, which they are most probable to acquire a new product or service, is what flame of directed marketing. The logistic one of market is a very important factor and that it can have much more efficiency when the profile of the customers is known. To not only get financial return datamining is used. Possibilities to provide an improvement in the quality of life of the population also can be obtained with techniques of mining of data. To identify the regions with indices of consumption of determined types of medicines, making possible entities to effect campaigns of prevention and control of illnesses, are focadas in this work. KeyWords: Mining of data. Date warehouse. Medicines. Consuming profile. 5 LISTA DE ILUSTRAÇÕES Figura 3.1 ... : Técnicas utilizadas em datamining ....................................................16 Figura 3.3 ... : Constituintes da Célula Neuronal – esquema....................................19 Figura 3.2 ... : Etapas do processo DCBD ................................................................30 Figura 3.4 ... : Neurônio Artificial...............................................................................30 Figura 3.5 ... : Exemplo de uma Rede Neural Artificial de 2 camadas......................31 Figura 3.6 ... : Visão geral de um algoritmo genético................................................33 Figura 3.7 ... : Fluxo do BD operacional ...................................................................38 Figura 3.8 ... : Fluxo do Data Warehouse .................................................................38 Figura 3.9 ... : DW – Forma de cubo.........................................................................47 Figura 3.10 . : DW – multidimensional ......................................................................48 Figura 4.1 ... : Área de abrangência geográfica........................................................62 Figura 4.2 ... : Tabelas dimensões............................................................................63 Figura 4.3 ... : Modelagem das tabelas do Data Warehouse ....................................63 Figura 4.4 ... : Tela de abertura do MineSet 3.2 da Silicon Graphics........................65 Figura 4.5 ... : Tool Manager.....................................................................................66 Figura 4.6 ... : Caixa de diálogo para conexão ao servidor.......................................68 Figura 4.7 ... : Caixa de diálogo para conexão ao servidor.......................................68 Figura 4.8 ... : Tool Manager mostrando o histórico das transformações .................70 Figura: 4.9 .. : Splat Visualizer .................................................................................71 Figura 4.10 . : Scatter Visualizer...............................................................................72 Figura 4.11 . : Tree Visualizer...................................................................................74 Figura 4.12 . : Detalhe na árvore do Tree Visualizer ................................................75 Figura 4.13 . : Carga dos dados iniciais....................................................................83 Figura 4.14 . : Caixa de diálogo Add Column ...........................................................84 Figura 4.15 . : Mining tools........................................................................................85 Figura 4.16 . : Scatter Visualizer – aplicação de Assoc. ...........................................85 Figura 4.17 . : Registros da mineração por estado ...................................................86 Figura 4.18 . : Caixa de diálogo Filter. ......................................................................87 Figura 4.19 . : Registros da mineração por estado – com filtro.................................87 Figura 4.20 . : Scatter Visualizer por Estado.............................................................88 6 Figura 4.21 . : Tree Visualizer por Estado ................................................................88 Figura 4.22 . : Scatter Visualizer – Ranking por estado (Geral)................................89 Figura 4.23 . : Scatter Visualizer – Ranking por estado (Paraná) .............................90 Figura 4.24 . : Scatter Visualizer – Ranking por estado (Rio Grande do Sul) ...........90 Figura 4.25 . : Scatter Visualizer – Ranking por estado (Santa Catarina).................91 Figura 4.26 . : Scatter Visualizer – Ranking por setor (Geral)...................................92 Figura 4.27 . : Scatter Visualizer – Ranking por setor (Paraná)................................93 Figura 4.28 . : Scatter Visualizer – Ranking por setor (Rio Grande do Sul).............93 Figura 4.29 . : Scatter Visualizer – Ranking por setor (Santa Catarina) ...................94 Figura 4.30 . : Tree Visualizer – Árvore por cidade (Geral)......................................95 Figura 4.31 . : Scatter Visualizer – Ranking por cidade (Geral) ...............................96 Figura 4.32 . : Scatter Visualizer – Ranking por cidade (Paraná) ............................96 Figura 4.33 . : Scatter Visualizer – Ranking por cidade (Rio Grande do Sul) ..........97 Figura 4.34 . : Scatter Visualizer – Ranking por cidade (Santa Catarina)................98 7 LISTA DE TABELAS Tabela 3.1 ... : Relação de classes terapêuticas .......................................................59 Tabela 4.1 ... : Ranking de venda acima da média por estado..................................89 Tabela 4.2 ... : Ranking de venda acima da média por estado, somente do PR .......90 Tabela 4.3 ... : Ranking de venda acima da média por estado somente do RS. .......90 Tabela 4.4 ... : Ranking de venda acima da média por estado, somente de SC .......91 Tabela 4.5 ... : Ranking de venda acima da média por setor ....................................92 Tabela 4.6 ... : Ranking de venda acima da média por setor, somente do Paraná ...93 Tabela 4.7 ... : Ranking de venda acima da média por setor, somente do RS..........93 Tabela 4.8 ... : Ranking de venda acima da média por setor, somente de SC..........94 Tabela 4.9 ... : Ranking de venda acima da média por cidade. .................................94 Tabela 4.10 . : Ranking de venda acima da média por cidade, somente Paraná......95 Tabela 4.11 . : Ranking de venda acima da média por cidade, somente RS ............96 Tabela 4.12 . : Ranking de venda acima da média por cidade, somente SC. ...........97 8 Sumário 1 INTRODUÇÃO .........................................................................................................9 2 PROPOSTA ...........................................................................................................11 2.1 TEMA .......................................................................................................................... 11 2.2 SITUAÇÃO DO PROBLEMA.............................................................................................. 11 2.3 JUSTIFICATIVA ............................................................................................................. 11 2.4 OBJETIVOS .................................................................................................................. 13 2.4.1 Objetivo geral ...................................................................................................... 13 2.4.2 Objetivos específicos .......................................................................................... 13 3 FUNDAMENTAÇÃO TEÓRICA .............................................................................14 3.1 DATAMINING (MINERAÇÃO DE DADOS) ........................................................................... 14 3.1.1 Conceito.............................................................................................................. 15 3.1.2 Processo de DCBD ............................................................................................. 18 3.1.3 As fases do processo de DCBD .......................................................................... 19 3.1.4 Técnicas de Mineração de Dados ....................................................................... 22 3.1.5 Extração com aplicações OLAP .......................................................................... 34 3.1.6 Considerações .................................................................................................... 35 3.2 DATA W AREHOUSE (DW) ............................................................................................. 37 3.2.1 Conceito.............................................................................................................. 37 3.2.2 O ambiente Data Warehouse .............................................................................. 40 3.2.3 Características de um data warehouse ............................................................... 41 3.2.4 Desenvolvimento do data warehouse.................................................................. 45 3.2.5 Modelagem de um data warehouse .................................................................... 46 3.2.6 Considerações .................................................................................................... 49 3.3 MEDICAMENTOS ........................................................................................................... 51 3.3.1 Conceito.............................................................................................................. 51 3.3.2 Classificação dos medicamentos internacionalmente.......................................... 51 3.3.3 Classificação dos medicamentos no Brasil - ANVISA.......................................... 54 3.3.4 Classificação patentária ...................................................................................... 57 3.3.5 Casses terapêuticas............................................................................................ 58 3.3.6 Considerações .................................................................................................... 59 4 DESENVOLVIMENTO ...........................................................................................61 4.1 METODOLOGIA ............................................................................................................. 61 4.1.1 Coleta de dados .................................................................................................. 61 4.2 O DATA W AREHOUSE ................................................................................................... 62 4.3 O SOFTWARE DE MINERAÇÃO: MINESET ........................................................................ 65 4.3.1 Trabalhando com o MineSet ............................................................................... 65 4.3.2 Iniciando o MineSet............................................................................................. 67 4.3.3 Usando o Tool Manager ...................................................................................... 69 4.3.4 Visualizando os Dados........................................................................................ 70 4.4 A MINERAÇÃO.............................................................................................................. 78 4.4.1 As fases do processo de mineração.................................................................... 79 4.5 Considerações ....................................................................................................... 99 5 CONSIDERAÇÕES FINAIS .................................................................................101 REFERÊNCIAS.......................................................................................................105 9 1 INTRODUÇÃO Este trabalho vem apresentar a monografia de conclusão da PósGraduação da Universidade do Extremo Sul Catarinense – UNESC, como requisito para a modalidade de Formação para o magistério Superior. Segundo O’BREIN, A tecnologia da informação está redefinindo os fundamentos dos negócios. Atendimento ao cliente, operações, estratégias de produto e de marketing e distribuição, dependem muito, e às vezes até totalmente, dos Sistemas de Informação. A tecnologia da informação e seus custos passaram a fazer parte integrante do dia-a-dia das empresas (O’BRIEN, 2001, p. 3). Mas, apesar da informática desempenhar um papel de importância incontestável nas empresas e de conceitos como o de Sistemas de Apoio a Decisão terem sido conceitualmente propostos já no final da década de setenta, a eficácia da informação, que é fornecida pelos sistemas de informação e apoio gerencial, ainda está por ser comprovada. Especialmente no que diz respeito a informação para a alta administração, onde se manipulam variáveis estratégicas e problemas pouco estruturados. Diversas empresas avançam no escuro, sem conhecer o perfil de seus clientes, quais os tipos de produtos e onde eles os adquirem. Utilizam poucas ferramentas que visem o acompanhamento do impacto de suas estratégias sobre o resultado de seus investimentos e a eficácia de suas ações. As ferramentas de datamining podem prever futuras tendências e comportamentos, permitindo as empresas um novo processo de tomada de decisão, baseado principalmente no conhecimento acumulado, e freqüentemente desprezado, contido em seus próprios bancos de dados (DIAS, 2002) A mudança de paradigma, causada por uma conjunção de fatores, como o grande acúmulo e coleta de dados, o relativo barateamento do processamento e dos computadores, e o surgimento de novas oportunidades, como o marketing direto, 10 trouxe um desenvolvimento ímpar para as técnicas de descoberta de conhecimento. Com posse dos dados de venda de uma distribuidora de medicamentos, será estudado o consumo por região, relacionando-os por tipo de medicamento. Aplicando-se técnicas de datamining a esses dados, se pretende construir conhecimentos, de modo que possam servir para tomadas de decisões às empresas do ramo, além de prestar um serviço social à população. 11 2 PROPOSTA 2.1 Tema Aplicação de datamining na área da saúde. 2.2 Situação do problema A inexistência, até então, de conhecimento a respeito do perfil consumidor dos clientes de medicamentos por região. 2.3 Justificativa Com o aumento da população, das tecnologias e com a globalização, o comércio tem se tornado cada vez mais competitivo. Com isso as empresas devem utilizar o potencial tecnológico, que se tem a disposição, para extrair informações que levem a executar seus processos de maneira eficaz. Mais agilidade na tomada de decisão, ações de marketing e vendas certeiras , retenção e ampliação da base de clientes, conhecimento exato da distância entre as realizações e estratégia da empresa. Provavelmente são esses os desejos da maior parte dos líderes de corporações, independente de sua localização, porte ou área de atuação (CERIONI, 2004, p.27). O conhecimento do público alvo de uma empresa se faz necessário, para que as empresas possam aperfeiçoar suas campanhas de marketing e obterem um maior retorno de investimento. Dentre outras finalidades, o datamining é utilizado justamente para isso: definir entre os clientes, quais são os mais prováveis a adquirir um novo produto ou serviço, é o que se chama de marketing direcionado. Por 12 exemplo, uma campanha de mala direta pode ser enviada somente a 10.000 clientes qualificados, ao invés de enviar a um total de 100.000 clientes, sem uma análise prévia. A logística de mercado é um fator muito importante e que pode ter muito mais eficiência quando se conhece o perfil dos clientes. A questão de organização de estoque, transporte e até mesmo o valor dos produtos, podem ter interferência do perfil dos clientes. Além de tudo isso, como o estudo é voltado para área da saúde, temos uma colaboração social muito importante, pois está ligada diretamente ao bem estar da população. Na medicina já é possível a criação e manutenção de grandes bancos de dados com informação sobre sintomas, resultados de exames, diagnósticos, tratamentos e curso das doenças para cada paciente. A mineração de dados pode fornecer conhecimento novo, como, por exemplo, a relação entre algumas doenças e certos [...] [...] local de moradia. (Carvalho, 2001, p.10). É muito provável que as autoridades governamentais, de posse dos conhecimentos sobre o consumo de medicamento por região, possam desenvolver campanhas de prevenção de certas doenças. Por exemplo, se em uma determinada região existe um consumo elevado de remédios para doenças transmissíveis, o governo deve tomar providência para amenizar e combater esta patologia com mais intensidade que em regiões que elas não se apresentam. 13 2.4 Objetivos 2.4.1 Objetivo geral Conhecer o perfil dos clientes consumidores de medicamentos por região, com base em informações de venda de medicamentos. 2.4.2 Objetivos específicos • Identificar as regiões consumidoras de medicação agrupadas por tipo de sal dos medicamentos; • Colaborar com a sociedade fornecendo conhecimento acerca do consumo de medicamentos. • Aplicar técnicas de datamining sobre base de dados de venda de medicamentos; • Avaliar os algoritmos de datamining mais adequados à base de dados de venda de medicamentos; 14 3 FUNDAMENTAÇÃO TEÓRICA 3.1 Datamining (Mineração de dados) Atualmente, as organizações têm se mostrado extremamente eficientes em capturar, organizar e armazenar grandes quantidades de dados, obtidos de suas operações diárias ou pesquisas científicas, porém, ainda não usam adequadamente essa gigantesca montanha de dados para transformá-la em conhecimentos que possam ser utilizados em suas próprias atividades, sejam elas comerciais ou científicas. Banco de dados relacionais são responsáveis por armazenar e recuperar dados de forma eficiente. No entanto, somente essas atividades não garantem a continuidade dos negócios. Nos dias de hoje, cada vez mais é necessário que se tire proveito maior dos dados. Surge a tríade dado, informação e conhecimento. O dado é algo bruto, é a matéria-prima da qual podemos extrair informação. Informação é o dado processado, com significado e contexto bem definido. O computador em essência, serve para transformar dados em informações. Por fim, o conhecimento é o uso inteligente da informação, é a informação contextualizada e utilizada na prática. Dessa forma, a qualidade da informação sustenta o conhecimento. (VIANA, 2004, p.16). Diariamente as empresas acumulam diversos dados em seus bancos de dados, tornando-os verdadeiros tesouros de informação sobre os vários processos e procedimentos das funções da empresa, inclusive com dados e hábitos de seus clientes, suas histórias de sucesso e fracassos. Todos estes dados podem contribuir com a empresa, sugerindo tendências e particularidades pertinentes a ela e seu meio ambiente interno e externo, visando uma rápida ação de seus gestores (FELDENS, 1999). Definimos datamining como o uso de técnicas automáticas de exploração de grandes quantidades de dados de forma a descobrir novos padrões e relações que, devido ao voluma de dados, não seriam facilmente descobertos a olho nu pelo ser humano. (CARVALHO, 2001, p.7). Datamining é uma das novidades da Ciência da Computação que veio para ficar. Com a geração de um volume cada vez maior de informação, é essencial tentar aproveitar o máximo possível desse investimento. Talvez a forma mais nobre de se utilizar esses vastos repositórios seja pesquisar se há algum conhecimento 15 escondido neles. 3.1.1 Conceito Os bancos relacionais, quando bem projetados, permitem a extração de diversas informações usando SQL. O mecanismo é simples: elabora-se um problema, é realizado um mapeamento para a linguagem de consulta, e essa consulta ~e submetida ao SGBD. Observe que esse processo resolve questões que necessariamente devem ser definidas, ou seja, as informações extraídas são respostas a uma consulta previamente estruturada. No entanto, dados armazenados podem esconder diversos tipos de padrões e comportamentos relevantes que a princípio não podem ser descobertos utilizando-se SQL. Além disso, por mais que o analista seja criativo, ele irá apenas conseguir elaborar diversas questões de forma que se tenham resultados práticos no final. Neste contexto está inserida a aplicabilidade da mineração de dados. (VIANA, 2004, p.16). A proposta de datamining é de descobrir padrões em dados de forma que esse conhecimento seja aplicado para a solução de problemas. O termo datamining pode causar um certo desconforto, dada a ampla gama de sentidos em que o mesmo pode ser usado. Uma tradução literal de datamining poderia ser: mineração, exploração das minas “de dados”. Ou ainda, segundo o dicionário Aurélio, mina é num sentido figurativo – uma boa fonte de informações e conhecimentos. Porém, em termos técnicos datamining preditivo é a procura por fortes padrões (informações valiosas) em grandes volumes de dados, que possam ser generalizados para decisões futuras acuradas. Para tal, medidas chamadas de “features” (características) são especificadas e uniformemente examinadas sobre muitos casos. (Oliveira, 1999). A tecnologia tornou relativamente fácil o acúmulo dos dados. Mineração de dados é um termo genérico utilizado para todos os métodos e técnicas computacionais que fazem extração de informações úteis de bilhões de bits de dados através de um resumo compacto dos mesmos (GSI, 1998). Talvez a definição mais importante de datamining tenha sido elaborada por Usama Fayyad (Fayyad et al. 1996): "...o processo não-trivial de identificar, em dados, padrões válidos, novos, potencialmente úteis e ultimamente compreensíveis". Esse processo vale-se de diversos algoritmos que processam os dados e encontram esses "padrões válidos, novos e valiosos". É preciso ressaltar um detalhe que costuma passar despercebido na literatura: embora os algoritmos atuais sejam 16 capazes de descobrir padrões "válidos e novos", ainda não temos uma solução eficaz para determinar padrões valiosos. Por essa razão, datamining ainda requer uma interação muito forte com analistas humanos, que são, em última instância, os principais responsáveis pela determinação do valor dos padrões encontrados. Além disso, a condução da exploração de dados é também tarefa fundamentalmente confiada a analistas humanos, um aspecto que não pode ser desprezado em nenhum projeto que queira ser bem sucedido. Para que o conceito seja melhor entendido, vejamos o seguinte exemplo (retirado da revista: SQL Magazine, Reinaldo Viana, 2004): tomemos por base um cadastro com aproximadamente 500.000 clientes de uma loja de roupas. Através do uso de técnicas de mineração foi descoberto que 7% desses clientes são casados, estão na faixa etária compreendida entre 31 e 40 anos e possuem pelo menos dois filhos. Note que inicialmente não foi elaborada uma questão do tipo “identifique os clientes casados com faixa etária entre 31 e 40 anos e que possuam pelo menos dois filhos”. O próprio processo de mineração identificou a pergunta e a resposta. Ainda segundo VIANA (2004), mineração de dados pode ser definida como processo automatizado de descoberta de novas informações a partir de grandes massas de dados. A mineração de dados é uma área extensa, interdisciplinar e envolve o estudo de diversas técnicas. Banco de dados Otimização Estatística Mineração de dados Inteligência Artificial Visualização Outras disciplinas Figura 3.1: Técnicas utilizadas em datamining. Datamining significa Mineração de dados e, pode ser entendido como 17 parte de um processo de descoberta do conhecimento. Mineração de Dados é um passo no processo de KDD que consiste na aplicação de análise de dados e algoritmos de descobrimento que produzem uma enumeração de padrões (ou modelos) particular sobre os dados. (GSI, 1998) Em diversos livros e artigos, assim como diz também Viana (2004. p.17), a mineração de dados é vista como parte de um processo maior, denominado KDD Knowledge Discover in Database – que significa descoberta de conhecimento em bases de dados. A mineração de dados é um dos passos de um processo maior denominado de Descoberta de Conhecimento em Base de Dados – DCBD (Knowledge Discovery in Databases – KDD), que é realizado por ferramentas computacionais em desenvolvimento para crescentes volumes de dados.(GSI 1998). DCBD refere-se ao processo geral de descoberta de conhecimento útil a partir de dados enquanto que mineração de dados refere-se à aplicação de algoritmos para extração de padrões de dados sem os passos adicionais do processo de DCBD (tais como a incorporação de conhecimento prévio e interpretação adequada de resultados). (FAYYAD, 1996). Já John (1997), defende a designação de mineração de dados para o processo como um todo, argumentando que a disparidade de termos entre a área de pesquisa e a indústria deve ser resolvida com a concessão dos pesquisadores, passando estes a aceitarem a expressão praticada pela indústria. Do ponto de vista do nosso interesse de pesquisa, consideramos adequada a distinção dada por Fayyad, por permitir uma delimitação bem clara dos alvos de pesquisa. Assim, assumimos mineração de dados como o núcleo do processo maior, DCBD. Sendo assim, para que se entenda melhor a mineração de dados, faz se necessário entender como funciona o processo de descoberta do conhecimento em bases de dados (DCBD) ou mais comumente utilizado: KDD (Knowledge Discovery in Databases). 18 3.1.2 Processo de DCBD Datamining é uma das ferramentas mais utilizadas para extração de conhecimento através de bancos de dados, tanto no meio comercial quanto no meio científico. DCBD é um processo que envolve a automação da identificação e do reconhecimento de padrões em um banco de dados. Sua principal característica é a extração não trivial de informações a partir de uma base de dados de grande porte. Essas informações são necessariamente implícitas, previamente desconhecidas, e potencialmente úteis. Devido a essas características incomuns, todo o processo de DCBD depende de uma nova geração de ferramentas e técnicas de análise de dados, e envolve diversas etapas. A principal, que forma o núcleo do processo, e que muitas vezes se confunde com ele, é a Mineração de dados. O processo DCBD é um conjunto de atividades contínuas que compartilham o conhecimento descoberto a partir de bases de dados. Esse conjunto é composto de 6 (seis) etapas: seleção dos dados, limpeza, enriquecimento, codificação, datamining e interpretação do conhecimento descoberto. (FAYYAD, 1996) Encontramos diversas maneiras de divisão do processo de DCBD. Com uma análise em diversos materiais (livros e artigos), pode-se chegar à uma divisão que entendemos ser a mais adequada. Veja na figura abaixo. 19 Seleção Dados Pré-processamento e Limpeza Dados - Alvo Transformação Dados Pré-processados Preparação dos dados Mineração de dados Dados Transformados Interpretação Avaliação Padrões Mineração Conhecimento Pós-processamento Figura 3.2: Etapas do processo DCBD A figura a cima apresenta, resumidamente, todo o processo DCBD, englobando uma fase de Preparação dos dados, que por sua vez é composta pelas etapas de seleção, pré-processamento e limpeza e transformação. A segunda fase é de mineração. É nesta fase que os dados preparados são processados, ou seja, é fazer a mineração dos dados propriamente dita e por fim, a fase de Interpretação/Avaliação, na qual o resultado do datamining é avaliado, visando determinar se algum conhecimento adicional foi descoberto, assim como definir a importância dos fatos gerados. 3.1.3 As fases do processo de DCBD Para melhor entender, vamos ver cada etapa detalhadamente: Seleção dos dados Na seleção dos dados deseja-se escolher apenas atributos relevantes do conjunto de atributos do banco de dados. Nesta fase, as questões em potencial para a mineração são identificadas. Dependendo do problema a ser minerado e da massa de dados disponíveis, haverá a escolha do tipo de técnica a ser trabalhada. A questão a ser minerada e a própria técnica a ser trabalhada definem qual parte da massa 20 de dados inicial vai ser utilizada e, para isso, selecionada. (VIANA, 2004. p.17). A seleção de atributos então, consiste na escolha de um subconjunto de atributos disponíveis para o algoritmo DCBD que seja relevante para o objetivo da tarefa. O subconjunto então selecionado é fornecido para o algoritmo de mineração de dados. Um motivo para essa seleção é otimizar o tempo de processamento do algoritmo minerador, visto que ele apenas trabalhará com os dados necessários, diminuindo o seu espaço de busca. Pré-processamento e limpeza dos dados Essa fase é responsável por consolidar as informações relevantes para o algoritmo minerador, buscando reduzir a complexidade do problema. Nesta fase são identificados e removidos os dados duplicados e/ou corrompidos. A execução desta fase corrige a base de dados eliminando consultas desnecessárias que seriam executadas pelo algoritmo minerador e que afetaria o seu processamento. Os métodos de limpeza de dados são herdados e dependentes do domínio da aplicação, desse modo a participação do analista se torna essencial. (VELASCO, 1999. p.18) Um exemplo simples de limpeza de dados, é a ocorrência da compra de uma grande quantidade de produtos por apenas um cliente em uma data específica. Essa informação não demonstra nenhum padrão, mas sim uma exceção. Alguns estudos mostram que a etapa de limpeza dos dados pode tomar até 80% do tempo necessário pata todo o processo de descoberta de conhecimento. Ela também é considerada uma das etapas mais importantes par ao sucesso do processo como um todo. (VIANA, 2004. p.17). Transformação dos dados Esta fase, converte os dados para a forma mais adequada para a construção e interpretação do modelo. Os dados pré-processados passam ainda por uma transformação com o objetivo de facilitar seu uso pelas técnicas de mineração. Nesta fase, o uso de data warehouse torna-se bastante útil, pois nessas estruturas o préprocessamento dos dados já existe, ou seja, as informações já estão 21 consolidadas num formato mais estatístico e menos transacional. (VIANA, 2004. p17). Por exemplo podemos citar o atributo IDADE, ele pode ser classificado por faixas, exemplo: Faixa 1: de 0 à 18 anos; Faixa 2: de 18 à 25 anos; Faixa 3: de 26 à 40 anos; e assim por diante. Um algoritmo de codificação divide valores contínuos dos atributos (inteiros ou reais) numa lista de intervalos representados por um código (como no exemplo acima). Efetivamente ocorre uma conversão de valores quantitativos para valores categóricos, ou seja, cada intervalo resulta num valor discreto do atributo. Mineração de dados Pode-se dizer que é a etapa mais importante do processo de DCBD. Caracteriza-se pela existência do algoritmo que diante da tarefa especificada será capaz de extrair eficientemente conhecimento implícito e útil de um banco de dados. Pode-se dizer que a mineração de dados é a fase que transforma dados em informação, conseqüentemente um sistema de suporte à decisão baseado em algoritmos de mineração de dados é o que transforma os dados em possíveis ações. É o que tínhamos estudado anteriormente neste mesmo capítulo. Interpretação / avaliação dos dados Finalmente, a saída do algoritmo minerador pode ser refinada numa fase de pós-processamento. Essa fase envolve a interpretação do conhecimento descoberto, ou algum processamento desse conhecimento. Esse pós-processamento deve ser incluído no algoritmo minerador, porém algumas vezes é vantajoso implementa-lo separadamente. (VALLASCO,1999). 22 A interpretação dos dados consiste no processo de tomada de decisão, que é o fator que é esperado com a mineração de dados. Essa tomada de decisão deverá levar em conta as regras de negócio da organização, pois a mineração de dados fornece as informações, mas como trabalhar essas informações, depende dos administradores e analistas. Como exemplo dessa fase, pode-se evidenciar uma situação onde a mineração de dados fornece seguinte informação: Sempre que um médico prescreve um antibiótico, também prescreve um medicamento para o estômago. A interpretação consistirá em formular conhecimento a partir dessas premissas e constatar que se pode fazer uma venda promocional desses produtos caso sejam adquiridos juntos. Esse é apenas um exemplo para demonstrar o sentido dessa etapa do processo DCBD: interpretar os resultados e transformá-los em conhecimento. 3.1.4 Técnicas de Mineração de Dados Os objetivos principais da mineração de dados são a previsão e descrição. A previsão faz uso de variáveis existentes no banco de dados para prever valores desconhecidos ou futuros. A descrição é voltada para a busca de padrões descrevendo os dados e a subseqüente apresentação para a interpretação do usuário. A relativa ênfase entre previsão e descrição varia de acordo com o sistema de mineração de dados utilizado. Estes objetivos são conseguidos através de vários algoritmos. Tais algoritmos são incorporados em vários métodos de mineração de dados. As ferramentas de mineração ou mecanismos de busca são usualmente 23 programas ou agentes automatizados inteligentes, incorporando alguma forma de inteligência artificial em bancos de dados relacionais. Os agentes detectam padrões predefinidos e alertam o usuário sobre variações.(GRILO, 1998) Qualquer algoritmo de mineração de dados é composto de três componentes: representação através de modelo, avaliação do modelo e método de busca. Resumidamente, o modelo deve representar limites flexíveis e suposições adequadas, de uma maneira que os padrões possam ser descobertos; o modelo deve ter validade preditiva - que pode ser baseada em validações cruzadas; então, a busca deveria otimizar os critérios de avaliação do modelo de acordo com os dados observados e a representação do modelo. As ferramentas de mineração ou mecanismos de busca são usualmente programas ou agentes automatizados inteligentes, incorporando alguma forma de inteligência artificial (GRILO, 1998) em bancos de dados relacionais. Os agentes detectam padrões predefinidos e alertam o usuário sobre variações. Vários tipos de ferramentas são utilizadas na mineração de dados: redes neurais, árvores de decisão, indução de regras e visualização de dados. Existem vários algoritmos de mineração – também chamados técnicas de mineração por alguns autores – de dados utilizados para resolver problemas específicos. Veremos agora algumas destas técnicas, ou algoritmos, mais utilizados: Classificação: Algoritmos de classificação ou geração de perfis, desenvolvem e classificam perfis de diferentes grupos. A classificação é uma das técnicas mais utilizadas do datamining, simplesmente porque é uma das tarefas cognitivas humanas mais realizadas no auxílio à compreensão do ambiente em que vivemos. (CARVALHO, 2001. p.21) 24 O mesmo autor (p.22) ainda diz: “No datamining são comuns as tarefas de classificação de clientes potencialmente consumidores de um determinado produto a julgar pelo seu perfil...”. Classificação é provavelmente a atividade mais comum do data mining nos dias de hoje. Classificação pode ajudar a encontrar as características dos clientes mais prováveis e de providenciar um modelo que pode ser utilizado para prever quem são eles. Podemos dizer então que classificar um objeto é determinar com que grupo de entidades, já classificadas anteriormente, esse objeto apresenta mais semelhança. A técnica de classificação utiliza um conjunto de exemplos préclassificados para desenvolver um modelo que pode classificar uma população de registros. Esta aplicação freqüentemente utiliza árvores de decisão ou algoritmos de classificação baseados em redes neurais artificiais. O uso de algoritmos de classificação inicia-se com um conjunto de treinamento de transações, por exemplo, pré-classificados. O algoritmo de treinamento classificador utiliza estes exemplos para determinar o conjunto de parâmetros necessários para discriminação apropriada. O algoritmo então codifica estes parâmetros num modelo chamado classificador. (BERNARDINO, 2000) Um exemplo pode ser numa análise de crédito: a companhia administradora de cartões terá registros de clientes contendo um número de descritores. Então, para um consumidor com um bom histórico de crédito, o registro é marcado como "excelente"; "bom", "médio" ou "ruim". A regra de classificação poderia ser: Consumidores com o histórico de crédito excelente, têm uma taxa de débito de menos de 10%. Esta regra poderia então ser utilizada para a classificação de novos conjuntos de dados. Outro exemplo poderia ser o marketing direcionado. Qualquer companhia que pretenda realizar uma divulgação através de mala direta utilizará a sua lista de correspondência ou uma comprada de terceiros. A lista de 25 correspondência pode ter tido resposta em malas diretas anteriores e, através de um gerador de perfis, uma classificação ou perfil é desenvolvido caracterizando as pessoas que tenham respondido às correspondências anteriores. O perfil então é tomado como uma previsão de resposta da correspondência atual. A lista de correspondência é então filtrada de maneira que os materiais promocionais sejam direcionados àqueles que correspondem ao perfil. Além de marketing direcionado e aprovação de crédito, a geração de perfis também é utilizada para as correspondências anexas e a determinação de tratamentos apropriados. Agrupamento: Consiste em identificar fatos que tendem a ocorrer simultaneamente, além de ocorrerem com uma certa freqüência. Agrupar é simplesmente (simples no definir, porém não no agir) classificar uma massa de dados em classes desconhecidas a priori em números ou forma. Uma tarefa é dadas várias categorias ou classes conhecidas, dizer a qual delas um certo dado pertence; outra tarefa semelhante em objetivo, porém muito mais complexa, é, de posse de uma massa de dados, dizer em quantas classes esses dados se distribuem e como são essas classes. (CARVALHO, 2001. p.24) Sendo assim, agrupar é , baseado em medidas de semelhança, definir quantas e quais classes existem em um conjunto de entidades. Associação: Associação é a formalização de uma regra observada a partir de ocorrências de itens em conjuntos de transações, a partir disso se chega a um fator de confiança que determina o percentual de acerto desta regra em novas transações. As taxas de confiança podem ser inicializadas para eliminar tendências mais comuns. Um exemplo é apenas manter regras com grau de confiança maior do que 90%. As regras de associação são regras compostas por causa (antecedente) e efeito (conseqüente) (SANTOS, 1998). Em se tratando de bancos de dados relacionais, os componentes são os valores dos atributos, participantes de uma 26 mesma transação. O formato destas regras é: X e Y. “O significado intuitivo deste tipo de regra é que transações de banco de dados que contêm X tendem a conter Y”. Os algoritmos de associação utilizam a forma lógica (valores contendo verdadeiro ou falso) para manipular os itens, isto é feito para tornar mais fácil o processo de descoberta. As regras de associação são as mais utilizadas. Elas descrevem a associação de um conjunto de objetos. A regra tem a seguinte forma: Valor1 → Valor2 Isso significa que as informações que satisfazem o Valor1 devem satisfazer também o Valor2. Por exemplo, uma regra associa a variação do preço das casas em relação as características espaciais como a distância da praia. Se distância do mar = Perto Então Preço da casa = caro. Os métodos de construção de regras de associação utilizam dois parâmetros: a confiança e a freqüência (REIS, 1999). Por exemplo, 85% das casas que são próximas do mar são caras. Neste caso, a confiança da regra é de 85%. A freqüência desta regra é a porcentagem dos objetos que possuem os dois valores no conjunto de aprendizagem. “Portanto, dizemos que associações ocorrem quando ocorrências estão ligadas num único evento”, (REIS, 1999). Algoritmos de associação têm numerosas aplicações, incluindo supermercados, planejamento de estoque, mala direta para marketing direcionado e planejamento de promoções de vendas. Por exemplo, a regra de associação deriva a partir da mineração de dados de um banco de dados de transações (através do leitor de código de barras de produtos), uma lista contendo o conjunto de itens comprados pelo consumidor em uma visita à loja. A regra de associação poderia ser: 27 “75% dos consumidores que compram Coca-cola também compram batata frita.” O número "75%" refere-se ao fator de confidência (confidence factor), uma medida do poder preditivo da regra. O item do lado esquerdo da regra (left hand side - LHS) é Coca-cola, enquanto que batata frita está do lado esquerdo da regra (right hand side - RHS). O algoritmo produz uma grande quantidade destas regras e cabe ao usuário selecionar o subconjunto de regras que têm graus de confidência maiores e também porcentagem de listas que seguem a esta regra. Podem existir também múltiplas associações tais como: “ 65% dos consumidores que compram Coca-cola e batata frita também compram sorvete." É importante para o usuário determinar quando existe algum elemento com chance de correlação (Coca e batata-frita sendo vendidas) ou quando existe alguma correlação desconhecida, mas importante (sorvete também estava sendo comprado). O impacto aqui é como o supermercado pode incrementar as vendas de sorvete? O que acontece se haver uma promoção de Pepsi? Em outras palavras, quais itens devem ser colocados lado a lado na prateleira? Um conjunto de itens relacionados deve estar seguidamente um após o outro. Estimativa: A arte de estimar consiste em determinar da melhor forma possível um valor baseando-se em outros valores de situações idênticas, mas nunca exatamente iguais. Estimar algum índice é determinar seu valor mais provável diante de dados do passado ou de dados de outros índices semelhantes sobre os quais se tem conhecimento. (CARVALHO, 2001. p.22) Ou ainda, estimar uma grandeza é avaliá-la tendo como base casos semelhantes nos quais essas grandeza esteja presente. 28 Previsão: A previsão consiste na determinação do futuro de uma grandeza. Segundo Carvalho (2001), a técnica de previsão resume-se na avaliação do valor futuro de algum índice, baseando-se em dados do comportamento passado desse índice. O único meio de verificarmos se uma previsão foi bem sucedida é aguardar o acontecimento e verificar o quanto foi acertada ou não a previsão realizada. Análise de afinidade: Consiste em identificar fatos que tendem a ocorrer simultaneamente, além de ocorrerem com uma certa freqüência. Determinar que fatos ocorrem simultaneamente com probabilidade razoável (co-ocorrência) ou que itens de uma massa de dados estão presentes juntos com uma certa chance (correlação) são tarefas típicas da análise de afinidade. (CARVALHO, 2001. p.24) A analise de afinidade preocupa-se em descobrir que elementos dos eventos têm relação no tempo. Estatística: A Estatística clássica envolve conceitos como distribuição normal, variância, análise de regressão, desvio simples, análise de conjuntos, análises discriminantes e intervalos de confiança, todos usados para estudar dados e os relacionamentos entre eles. Essas são as pedras fundamentais onde as mais avançadas análises estatísticas se apóiam. E sem dúvida, no coração das atuais ferramentas e técnicas de datamining, a análise estatística clássica desempenha um papel fundamental. A estatística tem uma sólida fundamentação teórica, mas os resultados da estatística podem ser grandes demais e difíceis de interpretar, pois necessitam do 29 usuário para verificar onde e como analisar os dados. A mineração de dados, entretanto, permite que o conhecimento do especialista sobre os dados e técnicas de análise avançadas do computador trabalhe de maneira conjunta. Sistemas de análise estatística têm sido utilizados por analistas para a detecção de padrões incomuns e explicação de padrões utilizando modelos estatísticos tais como modelos lineares. A análise estatística tem um campo enorme de utilização e a mineração de dados não irá substituir tais análises, e sim utilizar análises mais diretas baseadas nos resultados da mineração de dados. Por exemplo, a técnica de indução estatística é algo como a taxa média de falha nas máquinas. Redes neurais artificiais: Redes Neurais Artificiais são técnicas computacionais que apresentam um modelo matemático inspirado na estrutura neural de organismos inteligentes e que adquirem conhecimento através da experiência. Uma grande rede neural artificial pode ter centenas ou milhares de unidades de processamento; já o cérebro de um mamífero pode ter muitos bilhões de neurônios. O sistema nervoso é formado por um conjunto extremamente complexo de células, os neurônios. Eles têm um papel essencial na determinação do funcionamento e comportamento do corpo humano e do raciocínio. Os neurônios são formados pelos dendritos, que são um conjunto de terminais de entrada, pelo corpo central, e pelos axônios que são longos terminais de saída. Os neurônios se comunicam através de sinapses. Sinapse é a região onde dois neurônios entram em contato e através da qual os impulsos nervosos são transmitidos entre eles. Os impulsos recebidos por um neurônio A, em um determinado momento, são processados, e atingindo um dado limiar de ação, o neurônio A dispara, produzindo uma substância neurotransmissora que flui do corpo celular para o axônio, que pode estar conectado a um dendrito de um outro neurônio B. O neurotransmissor pode diminuir ou aumentar a polaridade da membrana pós-sináptica, inibindo ou excitando a geração dos pulsos no neurônio B. Este processo depende de vários fatores, como a geometria da sinapse e o tipo de neurotransmissor. Em média, cada neurônio forma entre mil e dez mil sinapses. O cérebro humano possui cerca de 10 E11 neurônios, e o número de sinapses é de mais de 10 E14, possibilitando a formação de redes muito complexas.(TAFNER, 1998) 30 Figura 3.3: Constituintes da Célula Neuronal - esquema O neurônio artificial é uma estrutura lógico-matemática que procura simular a forma, o comportamento e as funções de um neurônio biológico. Assim sendo, os dendritos foram substituídos por entradas, cujas ligações com o corpo celular artificial são realizadas através de elementos chamados de peso (simulando as sinapses). Os estímulos captados pelas entradas são processados pela função de soma, e o limiar de disparo do neurônio biológico foi substituído pela função de transferência. Figura 3.4: Neurônio Artificial Combinando diversos neurônios artificiais podemos formar o que é chamado de rede neural artificial. As entradas, simulando uma área de captação de estímulos, podem ser conectadas em muitos neurônios, resultando, assim, em uma 31 série de saídas, onde cada neurônio representa uma saída. Essas conexões, em comparação com o sistema biológico, representam o contato dos dendritos com outros neurônios, formando assim as sinapses. A função da conexão em si é tornar o sinal de saída de um neurônio em um sinal de entrada de outro, ou ainda, orientar o sinal de saída para o mundo externo (mundo real). As diferentes possibilidades de conexões entre as camadas de neurônios podem gerar n números de estruturas diferentes. Pesos Neurônios intermediários Neurônios de saída ENTRADAS SAÍDAS Figura 3.5: Exemplo de uma Rede Neural Artificial de 2 camadas com 4 entradas e 2 saídas. Segundo Marco Aurélio et al, as principais aplicações de Redes Neurais em mineração de dados são: Classificação, Clustering, aproximação de funções, previsão e verificação de tendências. Algoritmos Genéticos Os Algoritmos Genéticos caracterizam modelos que associam as principais regras genéticas bem como seus melhores recursos na solução de diversos tipos de problemas. Uma de suas principais características é que não encontram uma única solução, mas sim uma população de soluções ou soluções potenciais, caracterizando-se como métodos estocásticos de procura e seleção. Primeiramente é gerada uma população inicial, normalmente aleatória, de indivíduos que são representados como cromossomos formando uma genoma, e a partir daí com a aplicação dos operadores genéticos sofrem um processo simulado de evolução(NETO). Algoritmos genéticos são sistemas computacionais baseados em 32 processos evolutivos, assim utilizando métodos genéticos como crossover (cruzamento), mutação e seleção natural de Darwin. São úteis em diversos tipos de aplicações, principalmente na otimização de problemas, e também podem ser representados de diversas maneiras. Para efetuar as suas principais operações, os algoritmos genéticos necessitam de operadores genéticos, que então trabalham a população inicial com a função objetivo e classificam com uma função de avaliação. É importante ressaltar que um Algoritmo Genético não descaracteriza sua população primária, mas sim a faz evoluir para encontrar “espécies” melhores ou locais ótimos, que são as etapas em que os Algoritmos Genéticos já estão suficientemente evoluídos, e conseqüentemente suas soluções já são consideravelmente adequadas ao problema. Se pensarmos de uma maneira mais ampla, os Algoritmos Genéticos são modelos de aprendizado de máquina que procuram transmitir e recombinar material genético de uma geração para sua subseqüente, prezando principalmente pelo Princípio Evolucionário de Darwin que diz que em determinado ambiente em que houvesse uma espécie (ou várias) de animais, aqueles que possuíssem características fenotípicas e genotípicas de acordo com esse ambiente teriam melhores condições de sobrevivência e se adaptariam, até mesmo fisicamente, ao passar das gerações. (NETO). Resumidamente, pode-se afirmar que um algoritmo genético opera com três passos bem definidos: a) Definição da função objetiva; b) Definição e aplicação dos operadores genéticos; c) Definição da nova geração. 33 Figura 3.6: Visão geral de um algoritmo genético. Percebe-se claramente que o Algoritmo Genético funciona em ciclos que ao seu término ocorre o surgimento de uma nova geração de indivíduos, e que além da função objetivo existe uma outra que define a transmissão de indivíduos ou de seus respectivos DNA’s, é a função de avaliação também conhecida como fitness. O algoritmo genético cria novas soluções através da combinação e refinamento das informações dos cromossomas usando três operações: seleção, crossover e mutação. Essas operações produzem novas soluções que formam uma nova população. Cada nova população é chamada de geração. Durante a seleção, o algoritmo genético escolhe os cromossomas, privilegiando aqueles com maiores aptidões para permanecer e se multiplicar na população. Durante o crossover, o algoritmo genético utiliza as informações dos 34 cromossomos selecionados, formando outros cromos somas, enquanto que durante a mutação o algoritmo genético busca eventualmente melhora-las. Esses três operadores, seleção, crossover e mutação, agem no refinamento das soluções e quando combinados com os módulos de decodificação e avaliação, podem resolver uma vasta variedade de problemas. Têm sido empregados em mineração de dados para as tarefas de classificação e descrição de registros de uma base de dados, além da seleção de atributos de bases de dados que melhor caracterizem o objetivo da tarefa de KDD proposta. (VELLASCO, 1999). Um exemplo bem comum seria apresentar um algoritmo genético para decidir qual percurso seria mais curto ou mais rápido (porque nem sempre são os mesmos) entre duas cidades, é claro que não poderia existir um só caminho, pois seria insensato aplicar o algoritmo genético. Boas estradas teriam mais chances de serem selecionadas, assim como as mais curtas, e nesse caso o algoritmo genético maximizaria ou minimizaria, de acordo com o tipo de soluções desejadas, o número de soluções. Por um ponto de vista, um tipo de motorista gostaria de saber qual o caminho mais curto ou mais rápido, e por outro lado, outro tipo de motorista gostaria de saber quais os caminhos alternativos possíveis, onde a diferença de tempo não fosse muito grande e as estradas estivessem em melhor estado de conservação, economizando seu automóvel e evitando congestionamentos indesejáveis. É de suma importância dizer que a palavra otimização está ligada a palavra melhorar e por isso não só as melhores estradas são aceitas, mas também as “boas” estradas ou estradas com parâmetros diferentes, o que possibilita auxiliar na escolha e seleção das soluções finais. 3.1.5 Extração com aplicações OLAP Algumas ferramentas de desenvolvimento, fornecem alguns componentes de suporte a decisão, que possibilitam a construção de aplicações de 35 processamento de consultas analíticas sobre os dados de uma base. Estes componentes permitem a criação de tabelas e gráficos para visualizar os dados sob vários formatos. Esses componentes utilizam a teoria de extração em forma de cubo, o cubo de decisão funciona como uma base de dados multidimensional, correlacionando-se assim, com o Data Warehouse. Para o desenvolvimento de aplicações OLAP, pode-se utilizar os componentes em conjunto, de forma a apresentar uma base multidimensional através de tabelas ou gráficos. Essa representação de dados, dependendo da quantidade de dimensões (totalizações) pode exigir muito código em algumas linguagens de programação, mas existem linguagens que tornam esse trabalho bem simples, economizando preciosas horas ou até dias de trabalho. Os componentes baseiam-se em cubos, grids e gráficos de decisão, que foram projetados para subsidiar informações sobre grandes bases de dados. 3.1.6 Considerações Desde que a informática tomou conta de nossas vidas, imensos volumes de informação têm sido sistematicamente coletados e armazenados. A simples armazenagem e recuperação dessa informação já traz um grande benefício, pois agora já não é mais necessário procurar informação em volumosos e ineficazes arquivos de papel. Contudo, apenas recuperar informação não propicia todas as vantagens possíveis. O processo de datamining permite que se investigue esses dados à procura de padrões que tenham valor para a empresa. Devido a disponibilidade de enormes quantias de dados em formas eletrônicas, e à necessidade iminente de extrair delas informações e conhecimentos 36 úteis a diversas aplicações, por exemplo na análise de mercado, administração empresarial, apoio à decisão, etc., datamining foi popularmente tratado como sinônimo de descoberta de conhecimento em bases de dados, apesar de, na visão de alguns pesquisadores, datamining será considerado como um passo essencial da descoberta de conhecimento. A mineração de dados fornece padrões de informação sobre dados escondidos na base de dados, porém para que essa informação tenha utilidade, torna-se necessária a fase de interpretação dos padrões. Essa fase consiste em verificar e validar os padrões descobertos, para então, iniciar a tomada de decisões. Este é o objetivo final da mineração de dados, transformar as informações descobertas em ações, caracterizando assim o conhecimento. É importante ressaltar também que o datamining não é o final da atividade de descoberta de conhecimentos, mas é tão somente o início. É imprescindível (ao menos com a tecnologia atual) dispor de analistas capacitados que saibam interagir com os sistemas de forma a conduzi-los para uma extração de padrões úteis e relevantes. 37 3.2 Data Warehouse (DW) O sucesso de uma aplicação de datamining depende diretamente da quantidade e qualidade dos dados de entrada no processo. Sendo assim, é muito importante que o processo de limpeza dos dados seja rigoroso. Além disso, os dados devem estar dispostos de forma organizada para que as técnicas de mineração tenham uma melhor eficiência. Para isso é que são usados os Data Warehouse. De acordo com (Kimball, 1998) existem vários benefícios que são os objetivos do data warehouse: • O data warehouse fornece acesso a dados corporativos ou organizacionais. • Os dados do data warehouse são consistentes. • Os dados podem ser separados e combinados usando-se qualquer medição possível do negócio. • O data warehouse não consiste apenas em dados, mas também em um conjunto de ferramentas para consultar, analisar e apresentar as informações. • O data warehouse é o local que se publica os dados confiáveis. • A qualidade dos dados no data warehouse impulsiona a reengenharia de negócios. 3.2.1 Conceito Um Data Warehouse, também convencionado por DW, é um banco de dados no qual os dados são armazenados com o propósito de permitir ou facilitar a futura análise. Esta é a principal característica de um DW e é seu principal propósito. 38 “Data Warehouse é uma coleção de dados orientados por assuntos, integrados, variáveis com o tempo e não voláteis, para dar suporte ao processo gerencial de tomada de decisão”. (Inmon, 1997) A maioria dos dados que são coletados tem o objetivo de dirigir continuamente os negócios de uma companhia. Esses tipos de dados podem ser chamados de “dados operacionais”. Os bancos de dados operacionais armazenam as informações necessárias para as operações diárias da empresa, são utilizados por todos os funcionários para registrar e Operacional Incluir Alterar executar operações pré-definidas, por isso seus dados podem sofrer constantes mudanças conforme as necessidades atuais da empresa. Por não ocorrer redundância nos dados e as Acessar Excluir Tratamento de dados registro por registro Figura 3.7: Fluxo do BD operacional informações históricas não ficarem armazenadas por muito tempo, este tipo de banco de dados não exige grande capacidade de armazenamento. Os sistemas que usam dados operacionais são chamados de OLTP (On-Line Transaction Processing). Levando em consideração esta definição sobre dados operacionais, podese dizer que um data warehouse é, na verdade, uma coleção de dados derivados dos dados operacionais para sistemas de suporte à decisão. Estes dados derivados são, muitas vezes, referidos como Data Warehouse Carregar dados "gerenciais", "informacionais" ou "analíticos". Um data warehouse coleciona e organiza os dados, e torna-os disponíveis para fins de análise, dando a administração a possibilidade Acessar Carregamento e acesso a grandes quantidades de dados Figura 3.8: Fluxo do Data Warehouse 39 de ter acesso as informações da própria empresa. Este tipo de dado pode ser chamado “dado informacional”. Um DW armazena dados analíticos, destinados às necessidades da gerência no processo de tomada de decisões. Isto pode envolver consultas complexas que necessitam acessar um grande número de registros, por isso é importante a existência de muitos índices criados para acessar as informações da maneira mais rápida possível. Um data warehouse armazena informações históricas de muitos anos e por isso deve ter uma grande capacidade de processamento e armazenamento dos dados que se encontram de duas maneiras, detalhados e resumidos. Os sistemas que trabalham com dados informacionais são chamados de sistemas OLAP (On-line Analytic Processing). “O DW é um processo de organização dos dados de forma a criar novos conhecimentos de negócios e permitir novos insights no processo de negócios. Não se deve entender ou visualizar um DW como um sistema de banco de dados ou uma ferramenta estática e isolada de auxílio na tomada de decisões. Deve-se entende-lo como um conjunto de tecnologias de suporte a decisão, um processo contínuo e integrado que visa subsidiar o executivo de negócios nas decisões, tanto melhores como mais rápidas.” (PINHEIRO, 2004) Um ambiente de data warehouse tem como objetivo auxiliar as organizações a controlar e otimizar processos, porém os sistemas de banco de dados e as diversas aplicações que manipulam os dados de uma determinada organização, tratam os dados de modo a focar as transações referentes aos processos operacionais da mesma. Os usuários que são beneficiados por esta estrutura, são os que fazem os processos funcionarem, porém, existe uma classe de usuários que não são atendidos adequadamente por um ambiente desse tipo. É a classe dos usuários que devem tomar as decisões de uma empresa, estabelecendo estratégias de negócio, planos de marketing, campanhas promocionais, etc. Para esta classe de usuários é que foi idealizado o ambiente data warehouse, no qual o foco é o armazenamento de informações de uma certa organização pertinentes à tomada de decisões. A 40 diferença de uma estrutura e de outra, não é o armazenamento de informações, mas a maneira como as mesmas são armazenadas. 3.2.2 O ambiente Data Warehouse O data warehouse é organizado em assuntos/negócios, em torno das aplicações da empresa. Por exemplo, no caso de uma companhia de seguros, as aplicações podem ser automóveis, saúde, vida e perdas. Os principais assuntos da empresa podem ser cliente, apólice, prêmio e indenização. Portanto, nem toda a estrutura de dados da companhia é transferida para DW, mas sim, apenas os dados que se tratam dos assuntos principais da mesma. Outra característica do DW é o fato de ele ser integrado e ser não-volátil, ou seja, os dados são carregados e acessados, porém não sofrem atualizações. Ainda há uma outra característica que diz respeito ao fato se ser variável em relação ao tempo. Costuma-se guardar dados no horizonte de tempo de 5 à 10 anos, contendo uma chave que mostre de quando é um determinado dado. Os dados não são apenas despejados em um data warehouse. Eles também têm seu próprio ciclo de vida dentro deste. Num determinado momento, os dados são eliminados. A questão da eliminação de dados é uma das questões fundamentais de projeto que não devem escapar ao projetista do data warehouse.(INMON, 1997). Há diversas formas para se tratar da eliminação dos dados de um DW, pois os mesmos podem ser acrescentados a um arquivo de resumo rotativo onde os detalhes são perdidos, ou transferidos para um outro disco, podem também ser eliminados do sistema ou transferidos de um nível da arquitetura para outro, como do nível operacional para o nível do DW. 41 3.2.3 Características de um data warehouse Um data warehouse pode ser definido como um conjunto de dados baseados em assuntos, integrado, não volátil e variável em relação ao tempo de apoio as decisões gerenciais, (INMON, 1997). Desta definição podemos extrair as principais características que devem ser levadas em consideração no momento da criação do data warehouse. Os dados de um data warehouse devem ser classificados por assunto, além disso é importante que se faça a integração (normalização) de representação para facilitar as consultas, também deve-se definir a granularidade temporal da informação e a forma de armazenar os dados, ter consciência de que dados em um data warehouse não são modificados pois representam as informações em um determinado instante de tempo e podem estar fisicamente armazenados de diferentes formas. Vejamos estas características de forma detalhadas abaixo: Baseado em assuntos: refere-se ao fato de que o data warehouse é projetado com o intuito de fornecer informações estratégicas sobre o negócio, e não descrever os processos do negócio, como os bancos de dados operacionais; Por exemplo, uma empresa pode trabalhar com vendas se seguros de vida e o seu maior interesse ser o perfil de seus compradores, então o data warehouse será voltado para as pessoas que adquiriram o seguro, e não para o tipo de seguro que foi adquirido. Integrado: ao projetar-se o modelo de dados do data warehouse, têm-se o cuidado de eliminar as redundâncias, e as possibilidades de respostas ambíguas. O modelo é construído e organizado de forma a obter-se respostas únicas e certas, normalmente de forma independente da forma como os dados estão organizados 42 nos bancos de dados operacionais. Pode ser que os dados são captados de diversas aplicações, nem sempre normatizados. É necessário então, que haja uma integração desses dados para que se forme uma representação única para os dados, ou seja, o data warehouse. Um exemplo desse problema pode ser a representação do sexo, em um sistema pode ser representado por masculino e feminino (M/F), em outro pode ser representado por homem e mulher (H/M), em outro ainda pode ser representado por 1 e 2 e assim por diante. Com a integração dos dados, esse problema desaparece, pois deve ser adotada uma única representação para esse tipo de dado. Não-Volátil: a principal idéia na alimentação de dados no data warehouse, é a de que em determinados períodos, sejam extraídos dados dos sistemas operacionais e armazenados no data warehouse. Um vez armazenado, o dado não sofrerá alterações. Existe somente a carga inicial e as consultas posteriores. Ele é definido assim pois as operações em nível de registro em modo on-line, como são os sistemas transacionais, exigem um controle e um processamento muito grande, fugindo do objetivo principal do data warehouse. Segundo Inmon (1997) dizer que existe redundância de dados entre os sistemas transacionais e o DW demonstra a falta de conhecimento de como as coisas acontecem no DW. Antes de entrar no DW os dados passam por uma espécie de filtro, com isso, muitos dados nunca passam do ambiente transacional para o DW da mesma forma que também existem dados que não são encontrados fora do DW. Variável em relação ao tempo: com o acúmulo de dados sobre diversos períodos, o data warehouse fornecerá subsídios para análises do negócio em tempos diferentes, possibilitando análises de regressões, tendências, etc. Inmon (1997) disse que todos os dados no data warehouse são precisos em algum instante 43 no tempo, como eles podem estar corretos somente em um determinado momento, é dito que esses dados "variam com o tempo". A variação no tempo pode apresentar-se de três maneiras: • Em um DW é normal que as informações fiquem armazenadas por tempo maior de cinco anos ou em um período considerado satisfatório conforme a aplicação. Nas aplicações operacionais o período de tempo é muito mais curto, pois é necessário uma resposta rápida às exigências das tarefas diárias, o que só pode ser conseguido com o processamento de poucos dados; • Os dados possuem elementos temporais para que com eventuais mudanças nas regras do negócio, a empresa não perca dados históricos. • Os dados armazenados corretamente no DW não serão mais atualizados tendo-se assim uma imagem fiel da época em que foram gerados. Os dados ainda podem ser separados em duas categorias, a de dados atuais e de dados antigos. Os dados atuais são os dados de maior interesse, por refletir os acontecimentos mais recentes e devem ficar armazenados em disco, por ser um meio de acesso rápido porém de difícil gerenciamento. Esses dados fornecem uma visão do comportamento recente e podem permitir a utilização de técnicas como mineração de dados e descoberta de conhecimento. Os dados antigos, são aqueles que não são acessados freqüentemente, podendo ficar armazenados em meios de armazenamento de baixo custo, como por exemplo fitas. Mesmo assim eles continuam fazendo parte do DW e podem ser carregados sempre que surgir necessidade de extrair informações. 44 Credibilidade dos dados: A credibilidade dos dados é o mais importante para o sucesso de qualquer projeto. Discrepâncias simples de todo tipo podem causar sérios problemas quando se quer extrair dados para suportar decisões estratégicas para o negócio das empresas. Dados não dignos de confiança podem resultar em relatórios inúteis, que não têm importância alguma, como uma lista de pacientes do sexo masculino e grávidos, por exemplo. Coisas aparentemente simples, como um CEP errado, podem não ter nenhum impacto em uma transação de compra e venda, mas podem influir nas informações referentes à cobertura geográfica, por exemplo. Portanto, deve ser feita uma verificação da qualidade dos dados antes de passa-los para o ambiente DW, como grau de informações que estão corretas, consistência dos dados e coerência lógica. Granularidade: Esta importante característica diz respeito ao nível de detalhamento ou resumo de um projeto de data warehouse. Quanto mais detalhe, mais baixo o nível de granularidade. Quanto menos detalhe, mais alto o nível de granularidade. Esta característica, segundo Inmon (1997), está diretamente associada à quantidade de dados que é armazenada no data warehouse, afetando, simultaneamente o tipo de consulta que pode ser atendida, pois o volume de dados contidos em um data warehouse é balanceado de acordo com o nível de detalhe de uma consulta. Para exemplificar este conceito, pode-se citar o fato de um executivo de uma grande empresa necessite conhecer tão-somente o total anual de suas vendas. Para a satisfação deste tipo de consulta, a quantidade de dados armazenados no Data Warehouse deve ser bem menor do que, se por exemplo, este mesmo executivo necessitasse conhecer o valor total das vendas mensais, ano a ano. 45 Vale lembrar que quanto maior o nível de granularidade, menor a quantidade de detalhes fornecidos, assim, mais restrita é a capacidade de responder as mais variadas perguntas. Um nível de granularidade mais baixo fornece, então, a possibilidade de responder a qualquer pergunta. Segundo Inmon (1997) o balanceamento do nível de granularidade é um dos aspectos mais críticos no planejamento de um data warehouse, pois na maior parte do tempo, há uma grande demanda por eficiência no armazenamento e no acesso aos dados, bem como pela possibilidade de analisar dados em maior nível de detalhes. 3.2.4 Desenvolvimento do data warehouse O sucesso do desenvolvimento do data warehouse depende diretamente da estratégia adotada para este fim, levando-se em consideração alguns fatores críticos para a escolha clara e perfeita de sua arquitetura, adequando-se especificamente ao ambiente onde será implementado. Uma série de abordagens já foram estudadas para a implementação deste sistema, devendo-se fazer uma escolha fundamentada em pelo menos três dimensões essenciais: escopo do data warehouse (departamental, empresarial, etc.), grau de redundância de dados e tipo de usuário alvo. Quanto ao seu escopo, o data warehouse pode ser tão amplo que integre todas as informações da empresa, ou tão restrito que contemple apenas os dados de um único gerente. Quanto mais amplo, mais caro e maior a dificuldade de sua implementação. Por este motivo, a maioria das empresa opta pelo desenvolvimento de um único departamento inicial – Data Mart - e só então, após a análise de 46 resultados, ampliar gradativamente o escopo de seu data warehouse. No quesito redundância de dados, podemos citar três níveis fundamentais: • Data Warehouse Virtual: É a técnica que visa prover, com algumas facilidades para a extração dos dados, acesso direto aos bancos de dados operacionais. Neste caso não há redundância dos dados, porém, poderá haver uma sobrecarga do ambiente operacional. • Data Warehouse Central: É a utilização de um único banco de dados físico, agregando informações de diversos bancos de dados operacionais. Um data warehouse central deve ser carregado e mantido em intervalos regulares. • Data Warehouse Distribuído: Possui seus componentes distribuídos por diversos bancos de dados individuais. Em função desta distribuição, sua implementação é mais complexa, assim como os procedimentos de carga e manutenção. Num projeto de data warehouse deve-se sempre levar em consideração que se trata de um ambiente em constante mudança, alterações. Assim, um sistema mais simples e que se adapte a estas alterações com facilidade torna-se a solução mais atraente, assim como uma opção centralizada, pela facilidade de manutenção. 3.2.5 Modelagem de um data warehouse A modelagem de um data warehouse, assim como a modelagem de qualquer banco de dados que vá atender um sistema, é uma das etapas mais importantes do projeto. O desenho do data warehouse está profundamente ligado às 47 necessidades de informação da empresa e não está vinculado em nenhuma linguagem de programação. Imagine que o diretor da sua empresa pergunte: “Qual o nosso produto campeão de vendas no mês de janeiro/2000 ???” por esta pergunta podemos determinar que existem duas dimensões de pesquisa para o dado, primeiro a linha do tempo porque a pergunta especifica um período janeiro/2000 e outra dimensão identifica o produto a ser pesquisado, o cruzamento dessas duas informações nos dão parâmetros para trazer a informação necessária.(MARTINS, 2004) Percebe-se que o diretor de uma empresa jamais vai solicitar um dado com nível de detalhamento grande para tomar decisões, pois este detalhamento não é o objetivo do data warehouse, consegue-se no ambiente operacional. Segundo (Martins, 2001, p.06), nem todas as necessidades são tão simples, se a pergunta fosse qual o desempenho das vendas nos mercados que atuamos nos últimos anos, por exemplo, determina-se três dimensões para a medição: dimensão do tempo (o período a ser analisado é o último ano), a dimensão produto (o desempenho de vendas) e a dimensão mercados (qual o mercado com melhor desempenho). Este tipo de abordagem chama-se DW - multidimensional, e a melhor forma de armazenar as informações em uma estrutura desse tipo é o modelo cubista. “A representação dos dados em um data warehouse é estruturada como um cubo, transmitindo a idéia de múltiplas dimensões. [...] A inclusão de dados no data warehouse passa uma idéia de crescimento na largura, comprimento e profundidade do cubo.” (Barbalho, 2002, p 35). Uma estrutura desse tipo, lembra uma Modelagem multidimensional matriz multidimensional e é a forma mais fácil de se compreender como as informações estão a disposição. Segundo esta estrutura, pode-se exemplificar que quando se irá armazenar dados de faturamento de uma loja em um sistema Figura 3.9: DW – Forma de cubo 48 OLTP tem-se sempre o nível mais detalhado possível, tem-se registros com o número da loja, o produto com valores e quantidades, o vendedor que efetivou a venda, dados do cliente e assim por diante. Esse tipo de informação, deve ser tabulada, filtrada, limpa, organizada, checada e consolidada para que seja útil dentro de um data warehouse, de acordo com (Martins, 2001, p.06), tentar ver estas informações sem um devido tratamento é como ver um quebra cabeças não montado, simplesmente não se consegue ver todo o potencial de informação lá contido, porque não se enxerga as informações como se deve. “A construção do modelo começa pela definição de uma tabela denominada fato. Em seguida, definimos seus elementos relacionados, que são as tabelas denominadas Dimensão.Na intersecção das dimensões são obtidas as Medidas, que são as medições numéricas da tabela Fato” (Barbalho, 2002, p 35). Junto a tabela de fatos tem-se as tabelas dimensões, estas tabelas “orbitam” a tabela de fatos e trazem informações Modelagem multidimensional Dimensão Dimensão referenciais adicionais para a tabela de fatos, FATO como por exemplo dados sobre um produto, sobre a loja ou medição de tempo. As tabelas dentro de Dimensão um Dimensão data warehouse são modeladas de acordo com o Figura 3.10: DW - multidimensional exemplo acima, na maioria das vezes assumindo uma estrutura radical, com grandes tabelas no centro (as tabelas de fato) e outras menores (as tabelas de dimensão) “orbitando” as tabelas de fatos, provendo as dimensões em que os dados podem ser analisados em conjunto com as informações adicionais de cada uma das dimensões. As tabelas de dimensão, embora pareçam não ter muita relevância na retirada de informações, são as grandes responsáveis por fornecer mecanismos 49 necessários para análises nos dados. O usuário inicia uma consulta típica a um data warehouse sobre as tabelas de dimensões, onde diversas pequenas pesquisas são realizadas e atributos são definidos para serem aplicados a pesquisa final, segundo (MARTINS, 2004), estas operações são geralmente muito rápidas e definem as regras que serão aplicadas sobre a tabela de fatos gerando um “conjunto de resposta”, pode-se dizer que as tabelas de dimensões desempenham um papel de “guias de pesquisa”, fazendo um ajuste fino sobre os resultados esperados, quanto maiores são os recursos para os usuários definirem quais serão suas guias, menores serão os conjuntos de respostas, menor será o tráfego de rede e menor o tempo consumido pelo processamento. 3.2.6 Considerações As empresas possuem dados. E a maioria delas possui uma grande quantidade de dados em seus sistemas computacionais. Estes dados referem-se aos seus negócios e ao mercado como um todo em que a organização se encontra. A tecnologia de data warehouse mostra-se como uma ótima ferramenta para empresas que possuem esses grandes volumes de dados gerados e acumulados durante sua existência, no aúxilio a extração de conhecimento de uma base de dados, de uma forma que eles possam auxiliar os administradores destas empresas a tomarem decisões estratégicas rapidamente e com segurança. Nota-se que o DW não é um fim, mas sim um meio que as empresas dispõem para analisar informações históricas podendo utilizá-las para a melhoria dos processos atuais e futuros, portanto, a criação de utilização desta base de conhecimento a partir de um DW caracteriza a transformação da base de dados em 50 base de conhecimentos . O DW de suma importância no processo de extração, filtragem, carga e recuperação dos dados, que sem dúvida, é uma das determinantes fundamentais para se obter o sucesso ou fracasso em uma aplicação de datamining. 51 3.3 Medicamentos Os medicamentos representam o papel principal neste trabalho. São eles o objeto central de toda pesquisa. Mas o que vem a ser medicamento? 3.3.1 Conceito REMÉDIO s.m. Substância ou recurso de que se usa para combater uma moléstia. / O que serve para aplacar os sofrimentos morais, para atenuar os males da vida. / Tudo que elimina uma inconveniência, um mal: imaginar um remédio para a inflação monetária. (DELTA, 2005) MEDICAMENTO s.m. Substância empregada para combater uma doença ou preveni-la.( DELTA, 2005) Segundo Mérito Escolar (1994), “medicamento tem a seguinte definição: Remédio, curativo, Aplicação de meios terapêuticos”. Por sua vez remédio vem a ser: “tudo o que serve para atenuar uma dor”, e terapêutica: “Parte da medicina que trata dos meios de curar as doenças e da natureza dos remédios”. 3.3.2 Classificação dos medicamentos internacionalmente Internacionalmente os medicamentos podem ser classificados segundo os seguintes critérios: • Natureza da matéria prima • Necessidade de prescrição médica 52 • Caráter de essencialidade • Características dos produtos Natureza da matéria prima: a matéria-prima utilizada para a produção de medicamentos pode ser (HASENCLEVER, 2002): • originária da síntese fina de materiais orgânicos (farmoquímicos); • obtida a partir de processos que utilizem a biologia molecular (biotecnológicos); • obtida a partir do isolamento de substância medicamentosa encontrada em material botânico integral ou em seu extrato (fitoterápicos). Atualmente, os farmoquímicos, esmagadoramente, representam a maior parte da matéria prima utilizada mundialmente. Entretanto, as mudanças na estrutura de pesquisa e desenvolvimento (P&D) do setor apontam para um aumento na matéria prima obtida por processos biotecnológicos (MALERBA e ORSENIGO, 2001). As Novas Firmas de Biotecnologia (NFBs), que fazem parte desta nova estrutura, serão tratadas adiante com maior detalhamento. Quanto ao terceiro tipo de matéria-prima, os fitoterápicos, também representam um mercado razoavelmente novo, tendo iniciado seu crescimento nos anos sessenta (QUEIROZ e GONZÁLEZ, 2001). Necessidade de receita médica: de acordo com este critério, os medicamentos são diferenciados entre (HASONCLEVER, 2001): • os que necessitam de prescrição médica (éticos); • os que são de venda livre (não éticos ou também chamados OTC, sigla da nomenclatura inglesa, over the counter). 53 Os produtos éticos participam com 70% do faturamento do setor (ROMANO e BERNARDO, 2001). A análise do mercado dos medicamentos não éticos é semelhante à análise de outros bens de consumo não duráveis, diferentemente dos medicamentos éticos, em que a decisão de consumir não está, em condições normais, nas mãos do consumidor (FRENKEL, 2001). Caráter de essencialidade: são os medicamentos classificados pela Organização Mundial de Saúde (OMS) como de máxima importância e indispensáveis à saúde da população. Esta classificação formal, entretanto, não garante que os remédios essenciais sejam produzidos. Um trabalho realizado pela Organização Internacional Médicos Sem Fronteiras (MSF), denominado Remédios para Doenças Negligenciadas, mostrou o grau da defasagem de medicamentos para doenças tropicais (GALENO e JANSEN, 2002): • dos 1.393 novos medicamentos aprovados nos últimos 25 anos, 13 tratam de doenças tropicais e dois de tuberculose; • dos 13 medicamentos para doenças tropicais, seis foram desenvolvidos com o apoio de um programa financiado pela Organização das Nações Unidas, Banco Mundial e OM S. Este programa, chamado Treinamento para Doenças Tropicais (TDR), funcionou com a modesta cifra de US$ 30 milhões anuais. Características do produto: este critério pode ser subdividido em: • forma de apresentação - pomadas; • classes terapêuticas (atuação). líquidos, injetáveis, comprimidos, 54 Os dados do IMS, obtidos nos 13 países com maior faturamento do setor farmacêutico, no período de fevereiro de 2001 a janeiro de 2002, apontaram que as cinco classes terapêuticas mais vendidas foram os medicamentos: • cardiovasculares; • para o sistema nervoso central; • para o metabolismo alimentar; • os respiratórios; • os antiinflamatórios. Pelas características do setor, as empresas disputam fatias do mercado, de modo que as inovações em uma classe terapêutica não asseguram o sucesso em outra (MALERBA e ORSENIGO, 2001). Mesmo nos EUA, país mais representativo do setor farmacêutico, observa-se que as diferentes empresas dominam classes terapêuticas distintas. Por exemplo, os cinco produtos mais vendidos, suas respectivas classes terapêuticas e empresas, em 2001 foram (IMS, 2002): • Lipitor (cardiovascular - Pfizer) • Prilosec (metabolismo alimentar- Astra Zeneca) • Zocor (cardiovascular - Merck) • Prevacid (metabolismo alimentar - Tap) • Celebrez (antiinflamatório - Pharmacia) 3.3.3 Classificação dos medicamentos no Brasil - ANVISA No Brasil, o Ministério da Saúde, através da Agência Nacional de Vigilância Sanitária (ANVISA), regulamenta e fiscaliza a produção da indústria farmacêutica brasileira. A ANVISA adota a seguinte classificação e definições 55 técnicas para delinear as normas do setor (ANVISA, 2002): Medicamentos de referência ou marca: É um produto de marca pesquisado e desenvolvido por um laboratório, que fez todos os estudos e que tem todos os dados necessários do remédio de referência ao seu registro. Esses dados referem-se á eficácia terapêutica e qualidade do medicamento. O remédio de referência servirá de modelo para serem feitos os testes de qualidade do genérico. (ANVISA, 2005) São, normalmente, medicamentos inovadores, cuja eficácia, segurança e qualidade foram comprovadas cientificamente, por ocasião do registro junto ao Ministério da Saúde, através da ANVISA. São os medicamentos que, geralmente, se encontram há bastante tempo no mercado e têm uma marca comercial conhecida; Medicamentos similares: os similares são medicamentos que possuem o mesmo fármaco, a mesma concentração, forma farmacêutica, via de administração, posologia e indicação terapêutica do medicamento de referência, mas não têm sua bioequivalência com o medicamento de referência comprovada; Segundo a Lei 9.787/99, similar é aquele que contém o mesmo ou os mesmos princípios ativos, apresentam mesma concentração, forma farmacêutica, via de administração, posologia e indicação terapêutica do medicamento de referência registrado na Agência Nacional de Vigilância Sanitária. Porém, pode apresentar características diferentes relativas ao tamanho, forma do produto, prazo de validade e embalagem.(ANVISA, 2005). Apesar de contém o mesmo princípio ativo, apresentar a mesma concentração, forma farmacêutica, via de administração, posologia e indicação terapêutica do medicamento de referência, eles não são bioequivalentes. Sendo assim, não podem substituir os remédios de marca na receita pois, apesar de terem qualidade assegurada pelo Ministério da Saúde, não passaram por análises capazes de atestar se seus efeitos no paciente são exatamente iguais aos dos medicamentos de referência nos quesitos quantidade absorvida e velocidade de absorção.(LUPER, 2005) Medicamento genérico: é aquele que contém o mesmo fármaco (princípio ativo), na mesma dose e forma farmacêutica, é administrado pela mesma via e com a 56 mesma indicação terapêutica do medicamento de referência no país, apresentando a mesma segurança que o medicamento de referência no país. O Ministério da Saúde avalia os teste de bioequivalência entre o genérico e o medicamento de referência, apresentados pelo fabricante, para comprovação de sua qualidade. [..] O teste de bioequivalência consiste na demonstração de que o medicamento genérico e seu respectivo medicamento de referência apresentam o mesmo efeito e a mesma segurança.(MERCK, 2005). É um remédio intercambiável com o produto de marca ou inovador. Isto é, pode ser trocado por este pois têm rigorosamente as mesmas características e feitos sobre o organismo do paciente. A garantia é dada pelo Ministério da Saúde que exige testes de bioequivalência farmacêutica para aprovar os genéricos. Testes de bioequivalência farmacêutica servem para comprovar se dois produtos de idêntica forma farmacêutica, contendo idêntica composição, qualitativa e quantitativa, de princípio ativo, são absorvidos em igual quantidade e na mesma velocidade pelo organismo que os toma. Os genéricos podem ser trocados pelos medicamentos de marca quando o médico não se opuser à substituição. Medicamentos genéricos são medicamentos comercializados com o nome da substância ativa – denominação genérica conforme a DCB ou DCI – e que apresentam a mesma quantidade de princípio ativo, a mesma concentração, forma farmacêutica e via de administração do medicamento de referência, assegurado com este, sua intercambialidade. A intercambialidade é garantida pela realização de testes que comprovam a mesma eficácia e potencial de reações adversas entre o medicamento genérico e o seu referência. São identificados pela embalagem, por trazer os dizeres: Medicamento Genérico – Lei nº. 9.787/99 e uma tarja amarela, com um G na cor azul em destaque.(ANVISA, 2004) Esses medicamentos podem ser “copiados” por qualquer laboratório sem um vínculo com uma marca, ou seja, o nome do medicamento se restringe ao nome de sua substância química. Com isso, espera-se que os preços dos medicamentos baixem pelo fato de não haver marca e não haver os custos necessários para a descoberta de uma nova substância. Para que um laboratório possa comercializar um medicamento genérico, é necessário que o produto passe por testes de bioequivalência, ou seja, tem-se um 57 medicamento referência (de marca) e propõe-se a criação do genérico que será idêntico a ele, inclusive na maneira como agirá no organismo. Como esse processo é novidade no Brasil, tem causado muita confusão para meio médico, distribuidoras de medicamentos, farmácias e para os próprios consumidores, pois pelo fato de ser comercializado pelo nome químico, o medicamento genérico não tem uma assimilação imediata com o nome do medicamento referência. Além da dificuldade do nome, percebe-se uma certa dificuldade na fabricação e distribuição de medicamentos genéricos, pois o objetivo maior das distribuidoras de medicamentos e laboratórios é o lucro, conflitando assim, com a proposta do governo. Faltam informações para essas empresas, para que elas possam passar a fabricar e comercializar os medicamentos que serão mais vendidos. 3.3.4 Classificação patentária As categorias patentárias podem ser divididas, de acordo com a natureza de produção dos medicamentos, em produtos químicos e biotecnológicos. Os biotecnológicos são entendidos como aqueles derivados de processos tecnológicos aplicados a seres vivos ou às suas partes funcionais isoladas. A descoberta e o desenvolvimento do DNA recombinante em 1974 foi o marco para dividir produtos biotecnológicos em tradicionais e modernos (Bermudez et al., 2000). A possibilidade de manipulação do DNA, ou seja, do material genético dos organismos trouxe a base da engenharia genética que, por exemplo, pode produzir microorganismos modificados artificialmente capazes de fornecer produtos como a insulina e o 58 interferon. Considerando a legislação de propriedade industrial, os medicamentos podem ser divididos entre os que apresentam patentes e aqueles com patentes expiradas. Internacionalmente, os medicamentos protegidos por patentes são, mais uma vez, subdivididos em duas categorias. Os que apareceram pela primeira vez no mercado, ou os produtos inovadores, e o medicamento desenvolvido posteriormente com atividade terapêutica semelhante ao primeiro produto, mas com características químicas diferentes do medicamento inovador, denominado me too (FRENKEL, 2001). 3.3.5 Casses terapêuticas Quanto as características do produto, estes podem ser classificados em classes terapêuticas. A classe terapêutica de um produto pode identificar, por exemplo, qual a sua finalidade, ou seja, identifica para quais fins terapêuticos é destinado. Até a conclusão deste trabalho, não conseguimos identificar todas as classes terapêuticas existentes, mas conseguimos relacionar todas as utilizadas pela empresa que se está estudando. A tabela abaixo mostra as classes terapêuticas que a empresa trabalha. Classe Terapêutica ALERGENOS ANABOLIZANTES ANALGÉSICO ANDRÓGENO ANESTÉSICO ANOREXICOS ANSIOLÍTICO ANTI ACNE ANTI FÚNGICO Classe terapêutica AUDITIVOS BETABLOQUEADOR BRONCODILATARORES CICATRIZANTE CIRÚRGICO CLIMATÉRIOS COLAGOGOS CORTICOSTERÓIDE DESCONGESTIONANTE 59 ANTI HELMÍNTICO ANTI HEMORRÁGICO ANTI HEMORROIDÁRIO ANTI HIPERTENSIVO ANTI HISTAMÍNICO ANTIÁCIDO ANTIALCÓLICO ANTIALÉRGICO ANTIANÊMICO ANTIANGINOSOS E VASODILATADORES ANTIARRÍTMICOS ANTIASMÁTICO ANTIBIÓTICO/ANTIBACTERIANO/ANTIINFECCIOS ANTICOAGULANTE ANTICONCEPCIONAIS ANTICONVULCIONANTE ANTIDEPRESSIVO ANTIDIABÉTICOS ANTIDIARRÉICO ANTÍDOTO ANTIEMETICO E ANTINAUSEANTE ANTIESPASMÓDICO ANTIGLAUCOMATOSO ANTIGOTOSOS ANTIGRIPAL ANTIINFLAMATÓRIO ANTILIPEMICOS ANTIMALÁRICO ANTIMICÓTICO ANTINEOPLÁSICO ANTIPARASITARIOS ANTIPARKINSONIANOS ANTIPSICÓTICO ANTIRETROVIRAL E ANTIVIRÓTICO ANTISSÉPTICO ANTITABÁGICO ANTITIROIDEANOS ANTITROMBICO ANTITUSSÍGENO ANTIULCEROSO ANTIVARICOSO ANTIVERTIGINOSO ASSOCIAÇÃO HOMEOPÁTICA DESMELANIZANTE DIGESTIVO DILUENTE DIURÉTICO ELETRÓLITO EMOLIENTE ENEMA ENERGÉTICO ENZIMAS ESCABICIDAS ESTIMULANTES ESTROGENOS EXPECTORANTE FITOTERÁPICO GINECOLÓGICO HEPATOPROTETORES HIPNÓTICO HORMÔNIO IMUNOESTIMULANTE IMUNOGLOBINA INTOXOCAÇÃO KIT DIAGNÓSTICO LAXANTES MODULADORES NASAIS NEUROLÉPTICO NEUROPSICOESTIMULANTE NEUROTONICO ODONTOLÓGICO OFTALMOLÓGICO POLIVITAMÍNICO PROSTAGLANDINAS REIDRATANTES RELAXANTES REPOSITOR DE CÁLCIO SANGUE OU PLASMA SOROS SUPLEMENTOS VACINAS VASOCONSTRITORES VASODILATADORES VITAMINAS Tabela 3.1: Classes terapêuticas pesquisadas. 3.3.6 Considerações No Brasil, o Ministério da Saúde, através da Agência Nacional de 60 Vigilância Sanitária (ANVISA), é o responsável pela regulamentação e fiscalização da produção da indústria farmacêutica brasileira. É a ANVISA que define as normas para produção e comercialização de qualquer tipo de medicamento. Existem hoje em dia, muitas normas que estipulam o que pode e, o que não pode, ser feito no que diz respeito ao setor farmacêutico. Uma das definições da ANVISA, é a segmentação dos medicamentos em classes terapêuticas. Cada classe terapêutica possui características específicas, que servem para identificar o tipo do medicamento e consequentemente a sua finalidade. Essa classificação é que nos permite identificar o perfil do consumidor, uma vez que, existem inúmeros medicamentos com a mesma finalidade, não havendo necessidade nestes casos, de se conhecer o perfil do consumidor para cada medicamento, mas sim, pelo grupo de medicamento, que nesta ocasião é dado pela classe terapêutica. 61 4 DESENVOLVIMENTO 4.1 Metodologia A pesquisa será realizada com base em dados de venda de medicamentos. Estes dados serão classificados, organizados e limpos, para alimentar um data warehouse. Também será apresentado uma ferramenta de mineração, cujo software será utilizado na etapa da mineração e apresentação dos dados. Com o data warehouse montado, e a ferramenta de mineração apresentada, será descrito detalhadamente o funcionamento do algoritmo utilizado na mineração dos dados. Nesta etapa do trabalho poderá ser acompanhado todos os passos da mineração de dados propriamente dita, desde a implementação do data warehouse, passando pela técnica de mineração, até a análise do resultado que delimitará o final de todo trabalho. 4.1.1 Coleta de dados Os dados para alimentação do data warehouse, estão disponíveis em mídia magnética, gerados a partir de um sistema de gestão de uma empresa distribuidora de medicamentos. A distribuidora, que não será identificada nesta pesquisa, possui uma gama de dados, na qual são gerados um milhão de novos registros todos os dias, sete dias por semana. Cada registro é composto por um item de venda associado é 62 claro, com o cliente e o tipo de medicamentos. Área de abrangência Distribuidora Venda de medicamentos para os três estados do Sul do Brasil Figura 4.1: Área de abrangência geográfica Para efeito de pesquisa serão selecionados como amostra, um período de seis meses, obtendo assim, uma amostra com mais de cento e oitenta milhões de registros. 4.2 O Data Warehouse O Data Warehouse será o responsável por armazenar as informações extraídas do sistema gerencial da empresa, fazendo com que desta forma, as consultas e processamentos de busca do sistema de mineração de dados não sobrecarreguem o sistema gerencial. A seguir, analisaremos as principais fases determinadas para a elaboração do protótipo, baseadas no método de Kimball (1996). Segundo Kimball (1196), A construção do modelo começa pela definição de uma tabela denominada fato. Como a pesquisa é direcionada para a análise de vendas de medicamentos, o Data warehouse terá como tabela fato, uma tabela com a 63 movimentação das vendas, neste caso chamaremos de dw_vendas. Em seguida, definimos seus elementos relacionados, que são tabelas denominadas Dimensão. Para identificar as tabelas Dimensões, devemos responder algumas perguntas: O que está sendo medido? Quantidade de medicamentos vendidos. O que está sendo avaliado sobre essas vendas? Qual produto (medicamento) foi vendido. Quando (dia, mês, trimestre, ano) Tabelas dimensões Onde (Cidade, Região, Estado) Dimensão 1 Seguindo a modelagem multidimensional, os dados serão armazenados conforme mostra a Quando? Fato Dimensão 2 VENDA DE MEDICAMENTOS Qual? Dimensão 3 Onde? Figura 4.2: Tabelas dimensões figura abaixo. Sendo assim, teremos as tabelas: cliente, tempo, produto e venda. A figura abaixo representa como o data warehouse ficará disposto. Modelagem das tabelas do DW TEMPO VENDA PRODUTO Chave_tempo Chave_cliente Chave_produto Quantidade_venda Chave_produto Nome_produto Tipo_produto Cl_terapeutica CLIENTE Chave_cliente Nome_cidade Codigo_distrito Codigo_Setor Nome_estado Figura 4.3: Modelagem das tabelas do Data Warehouse Vale ressaltar que a estrutura do DW foi projetada de modo que 64 proporcionasse o maior numero de possibilidades de extração de dados, mas sempre direcionado ao foco do trabalho. Neste momento, por exemplo, a coluna dia da tabela tempo, terá seus valores carregados, já que a perda de performance é insignificante, e futuramente, num estudo mais aprofundado no qual queira-se conhecer o perfil dos consumidores de medicamentos por dia, será perfeitamente possível sem ter que mexer na estrutura do DW. A próxima etapa consiste em alimentar o DW, ou seja, fazer a carga com os dados existentes no sistema corporativo da empresa para uma base de dados independente, disponível apenas para carga e consulta (DW). Este processo é conhecido como ETL – Extração, transformação e Carga. Para efetuar a ETL utilizamos linguagens de programação ou ferramentas específicas, como Oracle Warehouse Builder (www.oracle.com) ou o Cognos DecisionStream (www.cognos.com). (BARBALHO, 2004). O DW foi construído no próprio banco de dados da empresa, utilizando o Oracle® como banco de dados e a linguagem PLSql, para transferência dos dados do sistema corporativo para o DW. Como este é um projeto inovador, ou seja, não existia nenhum tipo de trabalho neste sentido dentro da empresa, a carga inicial foi feita, buscando atender as necessidades do projeto, que visa pesquisar a venda de medicamentos durante seis meses. Mas, para ter continuidade, a empresa deverá executar os procedimentos de cargas, aí sim, com um menor volume de dados, periodicamente. O tempo entre uma carga e outra deve ser estipulado pela própria empresa ou pelo interessado nas informações, dependendo unicamente da necessidade de se ter os dados mais recentes para análise. Isso pode acontecer, semestralmente, mensalmente, semanalmente ou até diariamente. Com o data warehouse montado e com os dados carregados, iniciaremos o processo de aplicação de técnicas de mineração de dados. 65 4.3 O Software de mineração: MineSet O software MineSet e formado por um conjunto de ferramentas integradas, que permitam a realização de mineração e visualização de dados contidos em um banco de dados ou arquivos de texto com um formato específico. Essas ferramentas aplicam as técnicas de data mining para ”garimpar„ os dados e mostrar os resultados de forma gráfica, de tal forma que permita ao usuário uma melhor visualização, compreensão e com isso descoberta de informações ocultas contidas nestes dados. Este software foi desenvolvido pela empresa americana Silicon Graphics e está atualmente na sua versão 3.2. Figura 4.4: Tela de abertura do MineSet 3.2 da Silicon Graphics Para a realização deste projeto de pesquisa, o MineSet foi adquirido diretamente a partir do site na Internet da Silicon Graphics (http://www.sgi.com). 4.3.1 Trabalhando com o MineSet O MineSet trabalha em um sistema cliente/servidor, sendo que o processo servidor pode ser executado na própria máquina do cliente. Obviamente se o 66 processo servidor estiver em um servidor físico (uma máquina normalmente muito mais poderosa) o trabalho de processamento seria menos exaustivo. A versão testada no projeto e executada no sistema operacional Windows XP, existindo também a versão para Linux, que pode ser obtida a partir do mesmo web site. As exigências em nível de hardware para que o software seja utilizado de maneira eficiente são de uma máquina veloz (mínimo 500Mhz de velocidade do processador), memória RAM de 128 Megabytes e monitor com resolução de 1024 por 768 pixels. Um computador respeitando essas especificações pode ser usado como cliente e servidor, apresentando resultados satisfatórios de desempenho para estudos, embora esteja abaixo da capacidade para uma aplicação profissional. Figura 4.5: Tool Manager O Data Mover é o processo que é lançado pelo cliente e roda no servidor. Esse processo é o responsável pelo acesso ao banco de dados e também por executar transformações, operações de mineração e gera os arquivos de visualização. Estes arquivos de visualização são transferidos então ao cliente. 67 O Tool Manager e o processo que é executado no cliente e provê a interface do programa (GUI), com a qual o usuário faz a maioria das interações com o MineSet. É através do Tool Manager (figura 4.5) que o usuário especifica a base de dados a ser trabalhada, o conjunto de transformações a serem aplicadas, as ferramentas de mineração e visualização usadas e como salvar os resultados do trabalho. Uma vez tendo completado estas especificações, o Tool Manager envia essas informações ao processo servidor Data Mover. Como os dados a serem analisados podem existir em arquivos de diferentes tipos (extensões), o MineSet lê uma configuração em um arquivo (com extensão .schema) que contem informações sobre a tabela e o nome de um outro arquivo (com extensão .data) onde os dados realmente se encontram. Se a tabela de dados é do tipo Paradox, Dbase, arquivo de texto, etc., o Data Mover executa uma consulta e adquire um novo arquivo com uma base de dados compatível com o software (.data). Ou seja, o MineSet cria uma imagem do banco de dados e trabalha os dados a partir dessa imagem. 4.3.2 Iniciando o MineSet O primeiro passo a seguir, após iniciar o MineSet, é conectá-lo a um servidor. Para isso usamos o menu File do Tool Manager e em seguida o submenu Connect to Server. Na caixa de diálogo (Figura 4.6) digita-se o endereço do servidor, login e senha do usuário ou marca-se a opção This machine as current user para executar os processos do servidor na máquina do cliente. 68 Figura 4.6: Caixa de diálogo para conexão ao servidor. Figura 4.7: Caixa de diálogo para conexão ao servidor. O próximo passo e importar a base de dados. Acessando o menu File e o submenu Import Data, temos a caixa de diálogo da Figura 4.7. Deve ser especificado o tipo de arquivo que será importado para que o MineSet recorra ao arquivo de configuração adequado (.schema). Em seguida se localiza o arquivo de dados que se deseja trabalhar. O MineSet salva um arquivo de dados (.data) com uma copia adequada da tabela e um arquivo de configuração (.schema), ambos no servidor. Da 69 próxima vez que o cliente executar o MineSet, ele automaticamente abrirá o último arquivo de configuração utilizado. 4.3.3 Usando o Tool Manager A tela do Tool Manager está dividida em três painéis principais: Data Transformations, Data Destinations e Status. O painel Data Transformations mostra as colunas que estão sendo utilizadas no momento (Current Columns) e possui diversas ferramentas para as transformações dessas colunas, tais como remoção de colunas, mudança de nome e tipo dos dados das colunas, discretização, agregação e adição de colunas. Possui também botões que permitem voltar uma transformação que foi executada (table history) e posteriormente excluir as transformações (Current view is:). O painel Data Destination permite a escolha entre as ferramentas de visualização (Viz Tools), mineração (Mining Tools) ou alterar as configurações de gravação dos arquivos com resultados (Data File). O painel de Status mostra informações sobre as ações do processo DataMover, e algumas vezes resultados de processamentos realizados, tais como porcentagens e falhas no processo. O Tool Manager conta também com uma tela que oferece um acesso mais rápido e fácil as transformações realizadas. É a History of Operations View (Figura 4.8) que apresenta um gráfico com o histórico das operações executadas (esquerda) e a caixa de diálogo que foi apresentada ao usuário durante a operação. No exemplo, a operação selecionada foi a aplicação de um filtro. A caixa de diálogo de filtro e então mostrada (a direita) para que as configurações do filtro sejam modificadas. 70 4.8: Tool Manager mostrando o histórico das transformações 4.3.4 Visualizando os Dados O ponto alto do MineSet 3.2 e a sua capacidade de representar os dados analisados em excelentes gráficos que se aproveitam da capacidade que o ser humano tem de abstrair e entender a informação disposta na forma de esquemas (representações gráficas). Scatter Visualizer (Gráfico de dispersão) O MineSet oferece diversas ferramentas de visualização de dados que ajudam no entendimento dos dados, aproveitando-se da capacidade do ser humano de abstração de gráficos e cores. O Scatter e Splat Visualizers são semelhantes, com a distinção de que o Scatter Visualizer mostra dados como uma série de 71 entidades individuais, enquanto o Splat Visualizer mostra agregações de pontos de dados que aparecem como nuvens opacas e colorem uma imagem tridimensional. Figura: 4.9: Splat Visualizer O Scatter Visualizer permite que o usuário examine o comportamento dos dados através de diferentes dimensões. Os dados são mostrados em uma malha representando ate três dimensões. Dimensões extras podem ser mapeadas para os tamanhos, cores e rotulo de cada entidade mostrada, e mais duas dimensões independentes podem ser associadas como dimensões dinâmicas. Um slider pode ser utilizado para selecionar valores específicos ao longo dessas dimensões, ou um caminho pode ser traçado através dessas dimensões para fazer animações a partir do gráfico. Durante a travessia do caminho ocorrem mudanças na tela que refletem as variações das variáveis independentes. Esta visualização é indicada quando o numero de pontos de dados é inferior a 50.000, ou quando algum processo foi executado de forma que os dados sejam reduzidos a um conjunto de agregações. 72 Figura 4.10: Scatter Visualizer A ferramenta de visualização Scatter Visualizer mostra em uma perspectiva tridimensional os dados organizados no Arquivo de Dados e que serão interpretados pelo Arquivo de Configuração. Os dados serão mostrados em um espaço delimitado por no máximo três eixos de coordenadas. O Scatter Visualizer suporta os seguintes tipos de dados: números inteiros, pontos flutuantes, cadeias de caracteres e data. A ferramenta também aceita matrizes de tamanho fixo. O Arquivo de Dados possui extensão .data. O Arquivo de Configuração possui a extensão .scatterviz. Elementos do Scatter Visualizer: • A sentença axis faz com que uma variável seja utilizada como um eixo em 3D. O valor das variáveis determina onde as entidades são posicionadas nos eixos. • A sentença entity descreve um tamanho, cor e rotulo para entidades. Opções especificas são obtidas quando o botão Tool Option é pressionado. 73 • A sentença sumary especifica associação de informação a ser calculada para todos os dados definidos pela posição do slider. Esta sentença e utilizada para colorir a janela de desenho no painel de controle da animação. • A sentença slider identifica uma coluna a ser utilizada como uma dimensão do slider. Esta sentença é utilizada em visualizações com animações. A ferramenta de visualização Splat Visualizer permite ao usuário analisar visualmente relações existentes entre diversas variáveis tanto estaticamente como em animações. Este tipo de visualizador de dados é recomendado para base de dados com muitos registros. Os dados são mostrados em uma perspectiva tridimensional. Tais dados estão organizados no Arquivo de Dados e serão interpretados pelo Arquivo de Configuração. Os dados serão mostrados espacialmente delimitados por no máximo três eixos de coordenadas. O Splat Visualizer suporta os seguintes tipos de dados: numero inteiro, ponto flutuante, cadeia de caracteres, caractere e data. A ferramenta também aceita matrizes de tamanho fixo. O Arquivo de Dados possui extensão .data. O Arquivo de Configuração possui a extensão .splatviz. Elementos do Splat Visualizer: • Possui a sentenças axis, sumary e slider com as mesmas características do Scatter Visualizer juntamente com as sentenças color e opacity. • A sentença opacity descreve como uma coluna é mapeada para a opacidade das nuvens. 74 • A sentença color descreve como os valores são mapeados para as cores. Se nenhum mapeamento é realizado, o efeito é monocromático. Tree Visualizer O Tree Visualizer possibilita que o usuário visualize os dados em uma forma hierárquica, ou melhor, em uma abstração em árvore com raiz, nos filhos e nos folhas. A visualização é feita criando-se os Arquivos de Dados e de Configuração. Figura 4.11: Tree Visualizer A hierarquia dos dados contidos no Arquivo de Dados e definida através do Arquivo de Configuração. Esta forma de abstração e muito útil para a visualização de dados que possuem natureza hierárquica. Esta ferramenta visualização provê uma capacidade interativa tal que permite examinar as relações entre dados em diferentes níveis. Por exemplo, o Tree Visualizer pode ser usado para examinar a linha de produtos de uma companhia, mostrando graficamente a contribuição de cada produto para o rendimento total da companhia. Cada ramo da árvore mostra 75 informação em um nível de detalhes crescente, fragmentando os rendimentos por linhas de produtos e, eventualmente, por produtos individuais. Um outro exemplo da utilização do Tree Visualizer seria o de explorar os rendimentos das vendas de uma empresa, mostrando um total de vendas da companhia nacionalmente, bem como os subtotais nas regiões e nos demais níveis. As capacidades de filtragem e buscas do Tree Visualizer permitem que o usuário focalize um elemento específico dos dados e realize consultas específicas. Figura 4.12: Detalhe na árvore do Tree Visualizer O Tree Visualizer também é usado para verificar os resultados do Classificador de Árvores de Decisão, com cada decisão sendo representada por um no separado na árvore. Cada nó mostra também barras que ilustram como o classificador classifica os dados com base nas decisões acima daquele ponto. O Tree Visualizer suporta os seguintes tipos de dados: numero inteiro, ponto flutuante, cadeia de caracteres, caractere e data. A ferramenta também aceita matrizes de tamanhos fixos e variáveis e matrizes enumeradas. O Arquivo de Dados possui extensão .data. O Arquivo de Configuração possui a extensão .treeviz. 76 Elementos do Tree Visualizer: • A sentença key bars especifica a chave que será utilizada para selecionar as barras de cada nó na hierarquia. Apenas uma única chave pode ser utilizada, e esta chave deve ser diferente da chave da sentença levels. • A sentença levels define a hierarquia dos dados. É usada para dividir os dados em mais hierarquias, podendo-se especificar tantos níveis de hierarquias quanto forem necessários. • A sentença height bars descreve como as colunas são mapeadas nas alturas dos objetos visuais. Esta sentença possui várias cláusulas: o .normalize, que determina o maior valor para a altura de um objeto e normaliza os outros em função desta altura; o .max, e utilizada com a cláusula normalize para definir a maior altura permitida; o .scale, se as cláusulas normalize e max não forem usadas, a cláusula scale pode escalonar os valores das alturas dos objetos; o .filter, que filtra os objetos visuais baseado na altura dos mesmos; o .legend, que define significados para os mapeamentos feitos. • A sentença height disks usado para especificar as alturas que os discos representam. Discos opcionais são colocados nas mesmas localizações que as barras, sendo úteis quando seus atributos 77 possuem a mesma unidade de medida (por exemplo, vendas atuais e vendas do ultimo ano). • A sentença height base especifica como a altura da base e calculada. • A sentença color descreve como os valores são mapeados para as cores. Esta sentença possui as seguintes cláusulas: o .color naming, que segue as convenções do X Window System para nomes de cores; o .variável color, que e especificada para ser mapeada em uma cor; o .key, ao invés da variável anterior pode-se utilizar uma chave; o .colors, que especifica as cores que serão usadas; o .scale, permite associação de valores a uma variedade contínua de cores; o legend, que cria uma legenda para as cores. • A sentença color disks e usada para especificar o que as cores de discos representam. Pode-se nomear as cores especificas através do botão Tool Options ou permitir que o MineSet nomeie automaticamente. Esta opção só tem efeito se o disk height for especificado. • A sentença color bases e usada para especificar o que as cores básicas representam. Possui opções para agregar o atributo a cada nível utilizando o botão Tool Options. A sentença e usada para ordenar os nos pelos valores do atributo selecionado. 78 O mineSet tem ainda muito mais do que se pode apresentar de forma escrita. A apresentação gráfica é feita de forma muito prática e rápida. Mas o se deve enaltecer é sua capacidade interativa. Seja através de um simples Zoom ou de animações tridimensionais programadas ou on-line, o fato é que e quase todas as formas de apresentação gráficas, o sistema disponibiliza alguns tipos de interações possíveis. 4.4 A Mineração A ferramenta MineSet foi de suma importância para o desenvolvimento do trabalho, mas vale lembrar que o software não age sozinho. É extremamente necessário que se saiba onde se quer chegar, para que através de parâmetros possa-se “solicitar” ao software os processamentos desejados. A participação de um ser humano, ainda é fundamental para que se consiga gere algum tipo de conhecimento. Por outro, a parte de apresentação e feita com muita qualidade pelo MineSet. Não esquecendo que a interação é um ponto forte, até mesmo depois dos resultados já estiverem representados graficamente. Apesar de termos utilizados uma ferramenta de mineração que possui um nível muito alto de abstração, temos que mostrar como pretende-se analisar as informações para que se chegue aos resultados. Para isso ordenamos as fases do processo de descoberta do conhecimento (DCBD) e mostraremos o que foi feito em cada uma das fases até chegar à análise dos resultados. 79 4.4.1 As fases do processo de mineração Seguindo as fases do processo DCBD de Fayyad (1996), que diz que o DCBD é um conjunto de atividades contínuas que compartilham o conhecimento descoberto a partir de bases de dados. Esse conjunto é composto de 6 (seis) etapas: seleção dos dados, limpeza, enriquecimento, codificação, datamining e interpretação do conhecimento descoberto. Vejamos cada uma delas. Seleção dos dados Na seleção dos dados deseja-se escolher apenas atributos relevantes do conjunto de atributos do banco de dados. A seleção de atributos então, consiste na escolha de um subconjunto de atributos disponíveis para o algoritmo DCBD que seja relevante para o objetivo da tarefa. Um motivo para essa seleção é otimizar o tempo de processamento do algoritmo minerador, visto que ele apenas trabalhará com os dados necessários, diminuindo o seu espaço de busca. Analisando o DW, podemos extrair apenas o essencial para o bom desempenho de todo o processo de mineração. Da tabela VENDA (fato), precisamos de todos os atributos: chave_tempo, chave_produto, chave_cliente e quantidade venda. Da tabela PRODUTO (dimensão 1), serão precisos os atributos: chave_produto (para relacioná-lo com a tabela fato) e cl_terapeutica. Da tabela TEMPO (dimensão 2), como a intenção é analisar o consumo de medicamentos nos últimos 6 meses, precisa-se apenas dos atributos: chave_tempo e mês. Por fim, da tabela CLIENTE (dimensão 3), utilizaremos todos os atributos, afim de possibilitar uma pesquisa por qualquer uma das visões: por estado, por 80 região ou por cidade. Os atributos são: chave_cliente, nome_estado, codigo_distrito, codigo_setor e nome_cidade. Pré-processamento e limpeza dos dados Essa fase é responsável por consolidar as informações relevantes para o algoritmo minerador, buscando reduzir a complexidade do problema. Nesta fase são identificados e removidos os dados duplicados e/ou corrompidos. A execução desta fase corrige a base de dados eliminando consultas desnecessárias que seriam executadas pelo algoritmo minerador e que afetaria o seu processamento. Os métodos de limpeza de dados são herdados e dependentes do domínio da aplicação, desse modo a participação do analista se torna essencial. (VELASCO, 1999. p.18) Como o DW já foi desenvolvido tomando-se todos os cuidados necessários, para que constituísse uma base de dados consistente e íntegra, nesta fase faremos apenas o agrupamento dos registros de vendas no período de determinada classe_terapeutica por cliente. Ou seja, caso o cliente tenha efetuado mais de uma compra do mesmo medicamento no período analisado, converteremos os registros destas compras em apenas um registro, somando, é claro, a quantidade vendida. Transformação dos dados Esta fase converte os dados para a forma mais adequada para a construção e interpretação do modelo. Os dados pré-processados passam ainda por uma transformação com o objetivo de facilitar seu uso pelas técnicas de mineração. Nesta fase, o uso de data warehouse torna-se bastante útil, pois nessas estruturas o préprocessamento dos dados já existe, ou seja, as informações já estão consolidadas num formato mais estatístico e menos transacional. (VIANA, 2004. p17). Tomamos como exemplo a análise de venda de medicamentos por cidades. Neste caso procuramos identificar as cidades que mais consomem determinado tipo de medicamento. Esta análise deve ser proporcional ao número de 81 habitantes, uma vez que, caso isso não seja levado em consideração, teremos um maior consumo nas maiores cidades (maior em número de habitantes), e isso não irá nos dizer absolutamente nada além do que já se sabe. A partir deste momento, então, não queremos mais saber qual cidade tem o maior consumo de determinado tipo de medicamento, mais sim queremos saber o consumo de cada cidade proporcionalmente ao número de habitantes. Precisamos então de um mecanismo que corrija essa diferença natural do volume de vendas. A primeira idéia seria dividir o numero de vendas pelo número de habitantes, aí teríamos a venda de medicamentos por habitante de cada cidade. Essa idéia é ótima, mas não dispomos, no sistema, do número de habitantes por cidade e, um levantamento desses números, colocaria em risco o prazo da pesquisa. A solução proposta para tal problema foi buscada na própria base de dados. Não temos o numero de habitantes, mas temos como conseguir facilmente o numero de vendas total para cada cidade. Teoricamente quanto mais habitantes, maior o consumo geral de medicamentos. A solução seria então, dividirmos a quantidade vendida de cada medicamento pela soma de itens vendidos em cada cidade. Multiplicando o resultado da divisão por cem (100), teremos o percentual que determinado medicamento representa na cidade. VMC ∗ 100 X = VC ∑ Onde VMC representa a venda de determinado medicamento em determinada cidade; ΣVC, representa a soma total das vendas de medicamentos na cidade; e X é o percentual de venda que VMC representa dentro da determinada cidade o qual chamaremos de índice. 82 Com isso obtém-se um índice de proporção de venda de determinado medicamento por cidade, ou seja, quanto que a venda de determinado medicamento representa dentro de uma cidade. Tomamos como exemplo a cidade de TUBARÃO: no período analisado, a soma das quantidades compradas de todos os medicamentos foi correspondente à 29.287 unidades. Só a venda de medicamentos com a classe terapêutica ANSIOLÍTICOS, correspondeu à 2036 unidades. Colocando os valores na fórmula temos: 2036 X = ∗100 29.287 X = (6,95) Podemos dizer então que a venda de ANSIOLÍTICOS na cidade de TUBARÃO, corresponde a 6,95% de todas as vendas de medicamentos na cidade. Agora precisamos saber o que os percentuais encontrados querem nos dizer. Temos que, de alguma forma descobrir se o percentual encontrado representa um consumo elevado ou não. No caso de Ansiolíticos na cidade de Tubarão, 6,95% pode tanto mostrar um consumo exagerado, como também um consumo abaixo da média. Média, essa é apalavra que faltava e agora vai poder nos dizer realmente se 6,95% será considerado pouco ou muito. Somente sabendo qual a média de compra de determinado medicamento entre todas as cidades é que podemos dizer se determinada cidade tem ou não consumo elevado do referido medicamento. A solução proposta para isso, foi encontrar a média de venda de determinado medicamentos entre as cidades. Agora sim já podemos encontrar os percentuais de vendas que se encontram acima da média. 83 Mineração de dados Nesta fase é que os dados são submetidos aos processos do algoritmo de mineração. Os dados limpos e preparados nas etapas anteriores serão vasculhados através do algoritmo, em busca de informações que possam vir a serem úteis. Agora, será mostrado passo a passo todo o processo que utilizará a ferramenta MineSet para mineração e apresentação dos dados. O primeiro passo é iniciar o MineSet e conecta-lo ao servidor. Acessando o menu File do Tool Manager (figura 4.5), escolhendo a opção do submenu Connect to Server (figura 4.6). Depois de conectado, deve ser feita a carga de um arquivo para análise. Neste trabalho, dividimos o processo de mineração em três. Na primeira parte será feita uma busca a nível geográfico de estado, depois por setor e por último, por cidades. Sempre buscando identificar possíveis áreas com índices elevados de consumo de alguns medicamentos. Figura 4.13: Carga dos dados iniciais. O arquivo deve ser carregado, acessando o menu File e o submenu Import Data, tem-se a caixa de diálogo (Figura 4.7). Deve ser especificado então, o 84 tipo de arquivo que será importado para que o MineSet recorra ao arquivo de configuração adequado (.schema). carregamos o arquivo “Análise por estado.TXT”. Note que temos os seguintes campos: uf, classe terapêutica, qtde, total estado, índice e média (figura 4.13). Para facilitar a busca, pode ser adicionada uma sétima coluna com a diferença entre o índice e a média. Acessando o botão Add Column..., Figura 4.14: Caixa de diálogo Add Column Na caixa de diálogo Add Column (figura 4.14), em New Column Name: coloca-se o nome da coluna, ou seja, “Diferença”. Já em Defined by Expression deve ser montada a expressão: “índice” – “média”. As sessões Add column name to expression e Add op. to expression podem ser utilizadas para auxiliar na montagem da expressão. Com a coluna Diferença criada, podemos saber quais índices de consumo estão acima da média, pois a coluna diferença representa exatamente isso. A coluna diferença é o percentual de venda de determinada classe terapêutica menos a média do percentual de venda dentre os estados. 85 No lado direito do painel central do Tool Manager no quadro Data Destinations, existem algumas técnicas de mineração disponíveis para o uso. Precisando apenas informar alguns parâmetros para funcionamento mais preciso (figura 4.15). Figura 4.15: Mining tools Figura 4.16: Scatter Visualizer – aplicação de Assoc. 86 No quadro Data Destinations selecionando a opção Mining Tools e depois a seção Assoc, aplicando-se, a ferramenta de mineração por associação. O resultado pode ser visto na figura 4.16. Figura 4.17: Registros da mineração por estado. Na figura 4.16 fica quase impossível visualizar de forma precisa o resultado apresentado. Isso porque todos os registros são apresentados ao mesmo tempo em uma matriz gráfica. Como o objetivo é identificar onde existe um consumo maior de medicamento, pode ser filtrado somente os registro valores mais significativos. No botão Filter..., do quadro Data Transformations, definindo a expressão: “diferença” > 0,95, conforme ilustrado na figura 4.18, obtém-se as classes terapêuticas com vendas superiores a 0,95% acima da média de venda da mesma classe entre os estados analisados. 87 Figura 4.18: Caixa de diálogo Filter. Depois de aplicado o filtro, tem-se os registros cuja diferença é superior a 0,95 pontos percentuais, conforme mostra a figura 4.18. Figura 4.19: Registros da mineração por estado – com filtro. Para uma melhor abstração, a mesma informação pode ser apresentada graficamente. Utilizando a Opção Scatter Visualizer do MineSet, obtemos o seguinte gráfico (figura 4.19). Neste gráfico, estão relacionados os estados com as classes terapêuticas e, os percentuais de incidência de venda do medicamento são representados por cubos, que podem variar de tamanho e cor, de acordo com o valor a ser apresentado. 88 Figura 4.20: Scatter Visualizer por Estado Uma outra maneira de visualização é através de árvores. No MineSet, na opção Viz Tools, escolhendo Tree, Chega-se ao seguinte resultado (figura 4.20). Figura 4.21: Tree Visualizer por Estado Desta forma foram mostrados os passos para a mineração dos dados por Estado, esses mesmos processos foram aplicados ao arquivo com os dados por Cidade e por Setor. Um Setor é formado por várias cidades de uma mesma região. 89 Os resultados obtidos nesta fase serão apresentados em forma de tabelas e gráficos, agrupados por Estado, Setor ou Cidades, na próxima e última fase do processo DCBD: na análise dos resultados, que será mostrada a seguir. Interpretação dos resultados Os resultados serão apresentados em forma de ranking em tabelas e também como gráficos. O MineSet, dispõe de um mecanismo de visualização gráfica muito interessante de fácil visualização. O ranking de consumo acima da média por estado ficou da seguinte maneira: Tabela 4.1: Ranking de venda acima da média por estado UF PR SC RS SC SC SC RS RS SC RS Classe terapêutica ANTIBIÓTICO/ANTIBACTERIANO/ANTIINFECCIOSOS ANTICONCEPCIONAIS ANTICONCEPCIONAIS ANSIOLÍTICO ANTIINFLAMATÓRIO CORTICOSTERÓIDE ANTI HIPERTENSIVO ANTIINFLAMATÓRIO ANTIDEPRESSIVO ANSIOLÍTICO Qtde Total do Estado Índice Média Diferença 94236 297018 31.73 12.93 18.8 61618 632395 9.74 7.26 2.48 94521 975922 9.69 7.26 2.43 37084 632395 5.86 3.92 1.94 45581 632395 7.21 5.8 1.41 36245 632395 5.73 4.4 1.33 32497 975922 3.33 2.07 1.26 68155 975922 6.98 5.8 1.18 18534 632395 2.93 1.91 1.02 47902 975922 4.91 3.92 0.99 Figura 4.22: Scatter Visualizer – Ranking por estado (Geral) 90 Tabela 4.2: Ranking de venda acima da média por estado, somente do Paraná UF PR PR PR PR PR Classe terapêutica ANTIBIÓTICO/ANTIBACTERIANO/ANTIINFECCIOS ANTIULCEROSO TERAPÊUTICO DAS AFECÇÕES RESPIRATÓRIAS ANTIESPASMÓDICO RELAXANTES Qtde Total do Estado Índice Média Diferença 94236 297018 31.73 12.93 18.8 5152 297018 1.73 1.3 0.43 1051 297018 0.35 0.19 0.16 6060 297018 2.04 1.88 0.16 2837 297018 0.96 0.83 0.13 Figura 4.23: Scatter Visualizer – Ranking por estado (Paraná) Tabela 4.3: Ranking de venda acima da média por estado somente do RS. UF RS RS RS RS RS Classe terapêutica ANTICONCEPCIONAIS ANTI HIPERTENSIVO ANTIINFLAMATÓRIO ANSIOLÍTICO CORTICOSTERÓIDE Qtde Total do Estado Índice Média Diferença 94521 975922 9.69 7.26 2.43 32497 975922 3.33 2.07 1.26 68155 975922 6.98 5.8 1.18 47902 975922 4.91 3.92 0.99 48685 975922 4.99 4.4 0.59 Figura 4.24: Scatter Visualizer – Ranking por estado (Rio Grande do Sul) 91 Tabela 4.4: Ranking de venda acima da média por estado, somente de SC UF SC SC SC SC SC Classe terapêutica ANTICONCEPCIONAIS ANSIOLÍTICO ANTIINFLAMATÓRIO CORTICOSTERÓIDE ANTIDEPRESSIVO Qtde 61618 37084 45581 36245 18534 Total do Estado 632395 632395 632395 632395 632395 Índice 9.74 5.86 7.21 5.73 2.93 Média 7.26 3.92 5.8 4.4 1.91 Diferença 2.48 1.94 1.41 1.33 1.02 Figura 4.25: Scatter Visualizer – Ranking por estado (Santa Catarina) Em Santa Catarina nota-se que existe uma compra de medicamentos do tipo Anticoncepcionais, que chega 2,48% acima da média dos três estados do sul. Só para entender melhor como se chegou a tal valor, acompanhe o raciocínio: em Santa Catarina foi registrada uma venda total de 632.395 unidades de medicamentos em geral. Medicamentos do tipo Anticoncepcionais, apresentarão uma vendagem de 61.618 unidades, representando assim, 9,74% das vendas gerais. A média de venda de Anticoncepcionais entre os três Estados é de 7,26%. Comparando então, o percentual de Santa Catarina com a média, nota-se que a venda foi de 2,43 pontos percentuais acima da média. Outra informação que se pode extrair destes dados, é que o Estado de Santa Catarina apresenta um consumo de medicamentos muito parecido com o do Rio Grande do Sul, pelo menos na parte excedente à média. 92 Na mineração dos dados por setor, visualizamos os resultados de venda acima da média, conforme mostrado a seguir: Tabela 4.5: Ranking de venda acima da média por setor UF Dist. PR 0000 Setor Classe terapêutica 2 ANALGÉSICO Total Setor Qtde Índice Média Diferença 68283 105932 64,46 7,31 7,15 10901 14758 73,87 12,80 61,07 36 49 73,47 14,14 59,33 5133 7447 68,93 12,80 56,13 PR 0400 415 ANTIBIÓTICO/ANTIBACTERIANO/ANTIINFECCIOS RS 0800 815 ANTISSÉPTICO PR 1000 PR 0700 704 ANTISSÉPTICO 42 60 70,00 14,14 55,86 PR 0700 702 ANTISSÉPTICO 4 6 66,67 14,14 52,53 RS 0800 804 ANTISSÉPTICO 24 36 66,67 14,14 52,53 RS 0800 12 18 66,67 14,14 52,53 PR 1000 1004 ANTIBIÓTICO/ANTIBACTERIANO/ANTIINFECCIOS 2084 3417 60,99 12,80 48,19 PR 0400 410 ANTIBIÓTICO/ANTIBACTERIANO/ANTIINFECCIOS 7303 12018 60,77 12,80 47,97 RS 0800 808 ANTISSÉPTICO 42 68 61,76 14,14 47,62 PR 0400 411 ANTIBIÓTICO/ANTIBACTERIANO/ANTIINFECCIOS 8539 14859 57,47 12,80 44,67 PR 1000 1007 ANTIBIÓTICO/ANTIBACTERIANO/ANTIINFECCIOS 2133 3782 56,40 12,80 43,60 RS 0800 808 EMOLIENTE 26 68 38,24 3,73 34,51 RS 0500 513 ASSOCIAÇÃO HOMEOPÁTICA 6 19 31,58 1,30 30,28 PR 0400 407 ANTIBIÓTICO/ANTIBACTERIANO/ANTIINFECCIOS 7412 13703 54,09 12,80 41,29 PR 1000 1006 ANTIBIÓTICO/ANTIBACTERIANO/ANTIINFECCIOS 1582 2978 53,12 12,80 40,32 1002 ANTIBIÓTICO/ANTIBACTERIANO/ANTIINFECCIOS 814 ANTISSÉPTICO PR 0700 702 EMOLIENTE 2 6 33,33 3,73 29,60 RS 0800 804 EMOLIENTE 12 36 33,33 3,73 29,60 RS 0800 814 EMOLIENTE 6 18 33,33 3,73 29,60 Figura 4.26: Scatter Visualizer – Ranking por setor (Geral) 93 Tabela 4.6: Ranking de venda acima da média por setor, somente do Paraná UF Distrito PR 0000 PR 0400 PR 1000 PR 0700 PR 0700 Setor Classe terapêutica 2 ANALGÉSICO Total Setor Qtde Índice Média Diferença 68283 105932 64,46 7,31 57,15 415 ANTIBIÓTICO/ANTIBACTERIANO/ANTIINFECCIOS 10901 14758 73,87 12,80 61,07 1002 ANTIBIÓTICO/ANTIBACTERIANO/ANTIINFECCIOS 5133 7447 68,93 12,80 56,13 704 ANTISSÉPTICO 42 60 70,00 14,14 55,86 702 ANTISSÉPTICO 4 6 66,67 14,14 52,53 Figura 4.27: Scatter Visualizer – Ranking por setor (Paraná) Tabela 4.7: Ranking de venda acima da média por setor, somente do RS Total Setor UF Distrito RS 0800 815 ANTISSÉPTICO 36 49 73,47 14,14 59,33 RS 0800 804 ANTISSÉPTICO 24 36 66,67 14,14 52,53 RS 0800 814 ANTISSÉPTICO 12 18 66,67 14,14 52,53 RS 0800 808 ANTISSÉPTICO 42 68 61,76 14,14 47,62 RS 0800 808 EMOLIENTE 26 68 38,24 3,73 34,51 Setor Classe terapêutica Qtde Índice Média Figura 4.28: Scatter Visualizer – Ranking por setor (Rio Grande do Sul) Diferença 94 Tabela 4.8: Ranking de venda acima da média por setor, somente de Santa Catarina Setor Classe terapêutica Total Setor UF Distrito Qtde Índice Média Diferença SC 0800 801 LAXANTES 12 51 23,53 1,73 21,80 SC 0700 703 ANTIULCEROSO 10 61 16,39 1,21 15,18 SC 0700 703 ANTIPARASITARIOS 9 61 14,75 1,06 13,69 SC 0800 802 LAXANTES 12 107 11,21 1,73 9,48 SC 0800 801 SUPLEMENTOS 4 51 7,84 0,18 7,66 Figura 4.29: Scatter Visualizer – Ranking por setor (Santa Catarina) A última e maior fase de mineração, efetuada no maior nível de detalhamento proposto na pesquisa, buscando identificar as cidades em que se tem um índice de venda superior à media das outras cidades, pode ser visto a seguir. Tabela 4.9: Ranking de venda acima da média por cidade. UF Dist. Setor Cidade Classe terapêutica PR 0000 2 SAO JERONIMO DA SER ANALGÉSICO Qtde 200 Total 220 Índice 90,91 Média 8,28 Diferenç 82,63 PR 0000 2 SANTANA DO ITARARE ANALGÉSICO 302 346 87,28 8,28 79,00 SC 0100 112 SAO PEDRO ALCANTARA ANTIBIÓTICO/ANTIBACTERIANO/ANTIINFECCIOS 500 575 86,96 8,27 78,69 PR 0000 2 RONCADOR ANTIBIÓTICO/ANTIBACTERIANO/ANTIINFECCIOS 524 604 86,75 8,27 78,48 PR 0000 2 MAL.CANDIDO RONDON ANALGÉSICO 120 144 83,33 8,28 75,05 PR 0000 2 SAO JOAO DO TRIUNFO ANALGÉSICO 1099 1319 83,32 8,28 75,04 PR 0000 2 TELEMACO BORBA ANTIBIÓTICO/ANTIBACTERIANO/ANTIINFECCIOS 2548 3129 81,43 8,27 73,16 PR 0000 2 FOZ DO JORDAO ANALGÉSICO 1000 1240 80,65 8,28 72,37 95 PR 0000 2 QUINTA DO SOL ANTIBIÓTICO/ANTIBACTERIANO/ANTIINFECCIOS 506 631 80,19 8,27 71,92 PR 0400 415 TIJUCAS DO SUL ANTIBIÓTICO/ANTIBACTERIANO/ANTIINFECCIOS 1022 1279 79,91 8,27 71,64 70,55 PR 0000 2 GOIOERE ANTIBIÓTICO/ANTIBACTERIANO/ANTIINFECCIOS 1012 1284 78,82 8,27 RS 0300 317 ENCRUZILHADDA DO SUL ANTIDEPRESSIVO 430 591 72,76 3,39 69,37 PR 0000 2 BITURUNA ANALGÉSICO 250 329 75,99 8,28 67,71 PR 0000 2 NOVA CANTU ANTIBIÓTICO/ANTIBACTERIANO/ANTIINFECCIOS 530 700 75,71 8,27 67,44 PR 0000 2 MISSAL ANTIBIÓTICO/ANTIBACTERIANO/ANTIINFECCIOS 500 675 74,07 8,27 65,80 PR 0000 2 SENGES ANALGÉSICO 82 112 73,21 8,28 64,93 126 173 72,83 8,28 64,55 14 21 66,67 3,04 63,63 132 185 71,35 8,28 63,07 69,49 8,27 61,22 PR 0000 2 VERA CRUZ DO OESTE ANALGÉSICO RS 0300 307 ITAARA BRONCODILATARORES PR 0400 405 ALMITANTE TAMANDARE ANALGÉSICO PR 0000 2 PAICANDU ANTIBIÓTICO/ANTIBACTERIANO/ANTIINFECCIOS 1000 1439 PR 0400 408 PONTAL DO PARANA ANTIBIÓTICO/ANTIBACTERIANO/ANTIINFECCIOS 1548 2231 69,39 8,27 61,12 RS 0300 314 FRADERICO WESTPHALE NEUROPSICOESTIMULANTE 1 2 50,00 0,36 49,64 RS 0300 314 FRADERICO WESTPHALE ANESTÉSICO 1 2 50,00 0,62 49,38 81 145 55,86 7,46 48,40 4 7 57,14 11,56 45,58 314 656 47,87 3,04 44,83 10 22 45,45 0,72 44,73 4 9 44,44 3,04 41,40 380 726 52,34 11,56 40,78 40,26 SC 0500 502 PLANALTO ALEGRE ANTIINFLAMATÓRIO RS 0500 516 CAMPESTRE DA SERRA ANTICONCEPCIONAIS RS 0200 218 XANGRI LA ANTIESPASMÓDICO RS 0300 308 NOVA ESPERANCA SUL SOROS RS 0500 504 EREBANGO ANTIESPASMÓDICO RS 0500 507 RONDINHA ANTICONCEPCIONAIS RS 0300 309 SANTANALIVRAMENTO ANALGÉSICO SC 0400 414 BARRA DO SUL ANTIBIÓTICO/ANTIBACTERIANO/ANTIINFECCIOS SC 0100 101 LEOBERTO LEAL 50 103 48,54 8,28 108 225 48,00 8,27 39,73 ANTICONCEPCIONAIS 34 67 50,75 11,56 39,19 RS 0600 608 MINAS DO LEAO ANTI HIPERTENSIVO 125 300 41,67 3,35 38,32 RS 0300 314 FREDERICO WESTPHALEN ANTIBIÓTICO/ANTIBACTERIANO/ANTIINFECCIOS 509 1093 46,57 8,27 38,30 RS 0600 607 SENTINELA DO SUL DESCONGESTIONANTE 8 20 40,00 2,35 37,65 RS 0500 506 QUATRO IRMAOS ANTICONCEPCIONAIS 17 35 48,57 11,56 37,01 RS 0300 311 CAIBATE ANTIINFLAMATÓRIO 63 145 43,45 7,46 35,99 SC 0500 503 BOM JESUS ANTICONCEPCIONAIS 326 688 47,38 11,56 35,82 RS 0600 609 SAPUCAIA DO SUL ANTIBIÓTICO/ANTIBACTERIANO/ANTIINFECCIOS 3980 9199 43,27 8,27 35,00 RS 0600 606 CERRO GRANDE SUL ANTICONCEPCIONAIS 487 1052 46,29 11,56 34,73 SC 0400 403 PAPANDUVAS ANTICONCEPCIONAIS 122 265 46,04 11,56 34,48 RS 0500 506 BENJAMIN CONSTANT ANTICONCEPCIONAIS 56 122 45,90 11,56 34,34 SC 0100 112 STO.A.DA IMPERATRIS ANALGÉSICO 131 310 42,26 8,28 33,98 SC 0500 510 CALMON ANTICONCEPCIONAIS 57 129 44,19 11,56 32,63 SC 0400 418 MAJOR VIEIRA ANTICONCEPCIONAIS 144 330 43,64 11,56 32,08 SC 0500 511 STA CECILIA ANTIBIÓTICO/ANTIBACTERIANO/ANTIINFECCIOS 464 1220 38,03 8,27 29,76 SC 0100 112 STO A. DA IMPERATRI ANALGÉSICO 124 330 37,58 8,28 29,30 SC 0500 502 AGUAS FRIAS ANTIBIÓTICO/ANTIBACTERIANO/ANTIINFECCIOS 27 76 35,53 8,27 27,26 SC 0500 511 BRUNOPOLIS ANTICONCEPCIONAIS 42 111 37,84 11,56 26,28 Figura 4.30: Tree Visualizer – Árvore por cidade (Geral) 96 Figura 4.31: Scatter Visualizer – Ranking por cidade (Geral) Tabela 4.10: Ranking de venda acima da média por cidade, somente Paraná. UF Dist. Setor Cidade Classe terapêutica Média Difer. PR 0000 2 SAO JERONIMO DA SER ANALGÉSICO Qtde 200 220 90,91 8,28 82,63 PR 0000 2 SANTANA DO ITARARE ANALGÉSICO 302 346 87,28 8,28 79,00 PR 0000 2 RONCADOR ANTIBIÓTICO/ANTIBACTERIANO/ANTIINFECCIOS 524 604 86,75 8,27 78,48 PR 0000 2 MAL.CANDIDO RONDON ANALGÉSICO 120 144 83,33 8,28 75,05 PR 0000 2 SAO JOAO DO TRIUNFO ANALGÉSICO 1099 1319 83,32 8,28 75,04 PR 0000 2 TELEMACO BORBA ANTIBIÓTICO/ANTIBACTERIANO/ANTIINFECCIOS 2548 3129 81,43 8,27 73,16 PR 0000 2 FOZ DO JORDAO ANALGÉSICO 1000 1240 80,65 8,28 72,37 PR 0000 2 QUINTA DO SOL ANTIBIÓTICO/ANTIBACTERIANO/ANTIINFECCIOS 631 80,19 8,27 71,92 PR 0400 415 TIJUCAS DO SUL ANTIBIÓTICO/ANTIBACTERIANO/ANTIINFECCIOS 1022 1279 79,91 8,27 71,64 PR 0000 2 GOIOERE ANTIBIÓTICO/ANTIBACTERIANO/ANTIINFECCIOS 1012 1284 8,27 70,55 506 Total Índice 78,82 Figura 4.32: Scatter Visualizer – Ranking por cidade (Paraná) 97 Tabela 4.11: Ranking de venda acima da média por cidade, somente RS UF Dist. Setor Cidade Classe terapêutica RS 0300 317 ENCRUZILHADDA DO SUL ANTIDEPRESSIVO RS 0300 307 ITAARA BRONCODILATARORES RS 0300 314 FRADERICO WESTPHALE RS 0300 314 RS 0500 RS Qtde Total Índice Média Difer. 430 591 72,76 3,39 69,37 14 21 66,67 3,04 63,63 NEUROPSICOESTIMULANTE 1 2 50,00 0,36 49,64 FRADERICO WESTPHALE ANESTÉSICO 1 2 50,00 0,62 49,38 516 CAMPESTRE DA SERRA ANTICONCEPCIONAIS 4 7 57,14 11,56 45,58 0200 218 XANGRI LA ANTIESPASMÓDICO 314 656 47,87 3,04 44,83 RS 0300 308 NOVA ESPERANCA SUL SOROS 10 22 45,45 0,72 44,73 RS 0500 504 EREBANGO ANTIESPASMÓDICO 4 9 44,44 3,04 41,40 RS 0500 507 RONDINHA ANTICONCEPCIONAIS 380 726 52,34 11,56 40,78 RS 0300 309 SANTANA LIVRAMENTO ANALGÉSICO 50 103 48,54 8,28 40,26 Figura 4.33: Scatter Visualizer – Ranking por cidade (Rio Grande do Sul) Tabela 4.12: Ranking de venda acima da média por cidade, somente SC. UF Dist. Setor Cidade Classe terapêutica SC 0100 112 SAO PEDRO ALCANTARA ANTIBIÓTICO/ANTIBACTERIANO/ANTIINFECCIOS SC 0500 502 PLANALTO ALEGRE ANTIINFLAMATÓRIO SC 0400 414 BARRA DO SUL ANTIBIÓTICO/ANTIBACTERIANO/ANTIINFECCIOS SC 0100 101 LEOBERTO LEAL SC 0500 503 BOM JESUS Qtde Total Índice Média Difer. 500 575 86,96 8,27 78,69 81 145 55,86 7,46 48,40 108 225 48,00 8,27 39,73 ANTICONCEPCIONAIS 34 67 50,75 11,56 39,19 ANTICONCEPCIONAIS 326 688 47,38 11,56 35,82 SC 0400 403 PAPANDUVAS ANTICONCEPCIONAIS 122 265 46,04 11,56 34,48 SC 0100 112 STO.A.DA IMPERATRIS ANALGÉSICO 131 310 42,26 8,28 33,98 SC 0500 510 CALMON ANTICONCEPCIONAIS 57 129 44,19 11,56 32,63 SC 0400 418 MAJOR VIEIRA ANTICONCEPCIONAIS 144 330 43,64 11,56 32,08 SC 0500 511 STA CECILIA ANTIBIÓTICO/ANTIBACTERIANO/ANTIINFECCIOS 464 1220 38,03 8,27 29,76 98 Figura 4.34: Scatter Visualizer – Ranking por cidade (Santa Catarina) Analisando a figura 4.29, pode ser percebido que há uma elevação nos índices de vendas superiores à média, concentrados principalmente nos medicamentos do tipo ANTIBIÓTICO/ANTIBACTERIANO/ ANTIINFECCIOS e ANALGÉSIOCOS. Aprofundando a análise e selecionando apenas os registros mais significativos do estado do Paraná (figura 4.30), pode ser visto que a mesma teoria se aplica, e mais, nos registros com maior diferença de compra dentre todas a cidades, somente os tipos ANTIBIÓTICO/ANTIBACTERIANO/ANTIINFECCIOS e ANALGÉSIOCOS aparecem. Também pode-se identificar que nas cidades de SÃO JERONIMO DA SERRA e SANTANA DO ITARARE, a venda de medicamento do tipo ANALGÉSICO, é bastante superior, comparando-se com todas as outras cidades da região pesquisada. Na tabela e no gráfico que representa o estado do Rio Grande do Sul (figura 4.31), nota-se que há uma maior distribuição dos tipos de medicamentos que aparecem como líderes do ranking dos dez registros mais significativos. Oito tipos de 99 medicamentos e nove cidades aparecem. O maior índice é de ANTIDEPRESSIVO, na cidade de ENCRUZILHADA DO SUL. Em seguida aparece a cidade de ITAARA, com a venda de medicamento do tipo BRONCODILATADORES. Já nos dados que representam Santa Catarina (figura 4.32), observa que a ocorrência do tipo de medicamento ANTICONCEPCIONAIS, é de cinco cidades dentre dez. nota-se que nenhuma cidade tem índice elevado de mais de um tipo de medicamento e que o maior deles aponta para a cidade e SÃO PEDRO DE ALCANTARA, com o tipo ANTIBIÓTICO/ANTIBACTERIANO/ANTIINFECCIOS. 4.5 Considerações Neste capítulo, podemos ver como, a partir de dados operacionais, gerados para fins de controles diversos por sistema, de uma empresa, pode-se extrair informações para as quais o sistema não foi projetado. Foi visto que, com dados existentes na empresa, pode-se chegar à informações úteis para a própria empresa e também para entidades externas, como por exemplo outras empresas ou órgãos governamentais e também não governamentais. Os dados de venda de uma distribuidora de medicamentos, foram limpos e tratados para construção de um data warehouse. O data warehouse com os dados carregados, tornou-se uma fonte perfeita para aplicação de técnicas de datamining, Com o software de mineração de dados MineSet, que poderia ser um outro qualquer, dos vários que existem, aplicou-se o processo de mineração de dados sobre a base de dados contida no data warehouse. Depois do processo de mineração, as informações foram apresentadas em forma de tabelas como também 100 em forma de excelentes gráficos que se aproveitam da capacidade que o ser humano tem de abstrair e entender a informação disposta na forma de esquemas (representações gráficas). Com análise destas informações pode-se identificar várias regiões do sul do país com índices elevados de consumo de determinados tipos de medicamentos. Estas informações poderiam muito bem, ser utilizadas por indústria de medicamento para fins comerciais na aplicação de marketing direto, bem como para fins sociais por empresas, instituições não-governamentais e pelo próprio governo, no sentido de campanhas de prevenção e de tratamento das doenças que causam o consumo dos referidos tipos de medicamentos. Apesar de tudo levar a crer que nas cidades que tenham índices elevados de consumo de determinado tipo de medicamento, não podemos afirmar com certeza tratar-se de regiões efetivamente sofredoras das doenças relacionadas. Um dos problemas encontrados neste projeto foi o fato de as cidades terem o numero de habitantes diferentes. Tínhamos a quantidade de venda de medicamentos para cada cidade, mas não tínhamos o numero de habitantes por cidade. É natural que quanto mais habitantes se tem em uma cidade, mais medicamentos será consumido. A solução aplicada para este problema (achar o percentual que cada tipo medicamento representa na região), foi muito interessante, mas se chegasse-mos ao consumo por habitantes, seria ainda mais interessante. Outra divergência, já que não considero um problema, é que os dados analisados eram provenientes das vendas de uma única distribuidora e, sabe-se que ela não atua com exclusividade de vendas nas regiões avaliadas. 101 5 CONSIDERAÇÕES FINAIS Desde que a informática tomou conta de nossas vidas, imensos volumes de informação têm sido sistematicamente coletados e armazenados. A simples armazenagem e recuperação dessa informação já traz um grande benefício, pois agora já não é mais necessário procurar informação em volumosos e ineficazes arquivos de papel. Contudo, apenas recuperar informação não propicia todas as vantagens possíveis. O processo de datamining permite que se investigue esses dados à procura de padrões que tenham valor para a empresa ou para sociedade. Devido a disponibilidade de enormes quantias de dados em formas eletrônicas, e à necessidade iminente de extrair delas informações e conhecimentos úteis a diversas aplicações, datamining foi popularmente tratado como sinônimo de descoberta de conhecimento em bases de dados, apesar de, na visão de alguns pesquisadores, datamining ser considerado apenas como um passo essencial da descoberta de conhecimento. A mineração de dados fornece padrões de informação sobre dados escondidos na base de dados, porém para que essa informação tenha utilidade, torna-se necessária a fase de interpretação dos padrões. Essa fase consiste em verificar e validar os padrões descobertos, para então, iniciar a tomada de decisões. Este é o objetivo final da mineração de dados, transformar as informações descobertas em ações, caracterizando assim o conhecimento. É importante ressaltar também que o datamining não é o final da atividade de descoberta de conhecimentos, mas é tão somente o início. É imprescindível (ao menos com a tecnologia atual) dispor de analistas capacitados que saibam interagir 102 com os sistemas de forma a conduzi-los para uma extração de padrões úteis e relevantes. Para que se chegue a um objetivo, para o aprendizado ocorrer, uma série de informações de diferentes formatos e fontes precisa ser organizada de maneira consistente. As empresas possuem dados. E a maioria delas possui uma grande quantidade de dados em seus sistemas computacionais. A tecnologia de data warehouse mostra-se como uma ótima ferramenta para empresas que possuem esses grandes volumes de dados gerados e acumulados durante sua existência, no aúxilio a extração de conhecimento de uma base de dados, de uma forma que eles possam auxiliar os administradores destas empresas a tomarem decisões estratégicas rapidamente e com segurança. Nota-se que o DW não é um fim, mas sim um meio que as empresas dispõem para analisar informações históricas podendo utilizá-las para a melhoria dos processos atuais e futuros, portanto, a criação de utilização desta base de conhecimento a partir de um DW caracteriza a transformação da base de dados em base de conhecimentos . O DW é de suma importância no processo de extração, filtragem, carga e recuperação dos dados, que sem dúvida, é uma das determinantes fundamentais para se obter o sucesso ou fracasso em uma aplicação de datamining. Já uma empresa que trabalha com medicamentos, além dos cuidados normais que qualquer empresa teria com seus produtos, deve ater-se as normas e regras que regem o mercado de medicamentos. No Brasil, o Ministério da Saúde, através da Agência Nacional de Vigilância Sanitária (ANVISA), é o responsável pela regulamentação e fiscalização da produção da indústria farmacêutica brasileira. É a ANVISA que define as normas 103 para produção e comercialização de qualquer tipo de medicamento. Existem hoje em dia, muitas normas que estipulam o que pode, e o que não pode, ser feito no que diz respeito ao setor farmacêutico. Uma das definições da ANVISA é a segmentação dos medicamentos em classes terapêuticas. Cada classe terapêutica possui características específicas, que servem para identificar o tipo do medicamento e consequentemente a sua finalidade. Essa classificação nos permite identificar o perfil do consumidor, uma vez que, existem inúmeros medicamentos com a mesma finalidade, não havendo necessidade nestes casos, de se conhecer o perfil do consumidor para cada medicamento, mas sim, pelo grupo de medicamento, que nesta ocasião é dado pela classe terapêutica. Através da pesquisa elaborada, vimos que, com dados existentes na empresa, pode-se chegar à informações úteis para a própria empresa e também para entidades externas, como por exemplo outras empresas, o próprio governo e também entidades não governamentais. Os dados de venda de uma distribuidora de medicamentos foram limpos e tratados para construção de um data warehouse. O data warehouse com os dados carregados, tornou-se uma fonte perfeita para aplicação de técnicas de datamining, Com o software de mineração de dados MineSet, aplicou-se o processo de mineração de dados sobre a base de dados contida no data warehouse. Depois do processo de mineração, as informações foram apresentadas em forma de tabelas como também em forma de excelentes gráficos que se aproveitam da capacidade que o ser humano tem de abstrair e entender a informação disposta na forma de esquemas (representações gráficas). 104 Com análise destas informações pode-se identificar várias regiões do sul do país com índices elevados de consumo de determinados tipos de medicamentos. Estas informações poderiam muito bem, ser utilizadas por indústria de medicamento para fins comerciais na aplicação de marketing direto, bem como para fins sociais por empresas, instituições não-governamentais e pelo próprio governo, no sentido de campanhas de prevenção e de tratamento das doenças que causam o consumo dos referidos tipos de medicamentos. Apesar de tudo levar a crer que nas cidades que tenham índices elevados de consumo de determinado tipo de medicamento, não podemos afirmar com certeza tratar-se de regiões efetivamente sofredoras das doenças relacionadas. Um dos problemas encontrados neste projeto foi o fato de as cidades terem o numero de habitantes diferentes. Tínhamos a quantidade de venda de medicamentos para cada cidade, mas não tínhamos o numero de habitantes por cidade. É natural que quanto mais habitantes se tem em uma cidade, mais medicamentos será consumido. A solução aplicada para este problema (achar o percentual que cada tipo medicamento representa na região), foi muito interessante, mas se chegasse-mos ao consumo por habitantes, seria ainda mais interessante. Outra divergência, já que não considero um problema, é que os dados analisados eram provenientes das vendas de uma única distribuidora e, sabe-se que ela não atua com exclusividade de vendas nas regiões avaliadas. É claro que nenhum destes entraves diminui o poder das informações geradas e do conhecimento adquirido. Alem de tudo, é muito prazeroso elaborar um projeto com capacidade de proporcionar maior agilidade nas tomadas de decisão das empresas, nas ações de marketing e vendas certeiras, além do que julgo mais interessante: possibilitar medidas que visem promover melhorias no âmbito social. 105 REFERÊNCIAS ANVISA, Agência Nacional da Vigilância Sanitária. Conceitos de tipos de medicamentos. Disponível em: <http://www.medicamentogenerico.org.br/ gb_conceito.php3>. Acesso em 26 de março de 2004. BARBALHO, Patrícia. Descubra o Data Warehouse. SQL Magazine, Ano 1, Edição 3, Pág. 34. CAMPOS, Maria Luiza et al. Características do Data Warehouse. http://genesis.nce.ufrj.br/ dataware/tutorial/cbasicos.html. Acesso em 07/09/2002. CARVALHO, Luís Alfredo Vidal de, 1960. Datamining: a mineração de dados no marketing, medicina, economia, engenharia e administração. São Paulo: Érica, 2001. DIAS, André Luiz; PRATTI, Wagner. Linux: soluções simples. São Paulo: Escala, 1999. (Coleção Informática Descomplicada. n. 33). DELTA, Dicionário AOL. - http://win2nt239.digiweb.com.br/dicionariobemvindo.htm. Acessado em 02/04/2005. FAYYAD, Usama; Piatetski-Shapiro, Gregory; Smyth, Padhraic (1996) The KDD Process for Extracting Useful Knowledge from Volumes of Data. In: Communications of the ACM, pp.27-34, Nov.1996. FELDENS, Miguel A.; Castilho, José Mauro Volkmer de, Engenharia da Descoberta de Conhecimento em Bases de Dados: Estudo e Aplicação na Área de Saúde: Dissertação de mestrado, Universidade Federal do Rio Grande do Sul, Porto Alegre, Brasil, 1997. FRENKEL, J. 2001. O mercado farmacêutico brasileiro: a sua evolução recente, mercado e preços. IN Brasil: radiografia da saúde. Barjas Negri e Geraldo Di Giovanni. UNICAMP. 588p. GALENO, R. e JANSEN R. 2002. Indústria ignora doença de países pobres. www.fsc.ufsc.br/~canzian/opinioes/doenca-de-pobre.html. Acesso em 11/2002. 106 GRILO, Carlos Fernando Almeida. Inteligência Artificial. Dez 1998. Disponível em:. <http://www.estg.iplei.pt/~grilo/ia.htm>. Acessado em 19/07/2004 GSI – Grupo de Sistemas Inteligentes. Mineração de Dados. Universidade Estadual de Maringá. 1998. On-line. Internet. http://www.din.uem.br/~ia/. Acessado em 12/11/2004. Hasenclever, L. 2002. Diagnóstico da indústria farmacêutica brasileira. UNESCO/FUJB/IR-UFRJ. Rio de Janeiro. INMON, W.H. Como construir um Data Warehouse. Tradução de Ana Maria Netto Guz. Rio de Janeito: Campus, 1997. 388p. KIMBALL, Ralph. Data warehouse toolkit. Tradução de Mônica Rosemberg. São Paulo: Makron Books, 1998. 388 p. LUPER, 2005. FAQ – Frequently Asked Questions. Disponível <http://www.luper.com.br/falecono/falefaq.htm>. Acessado em 01/02/2005. em MALERBA, F e ORSENIGO, L. 2001. Innovation and market structure in dynamics of the pharmaceutical industry and biotechnology: towards a history friendly model. DRUID Nelson and Winter Conference, Aalborg. MARTINS. DataWarehouse – Um armazém bem diferente. Disponível em <www.mrsoftware.com.br>. Acessado em 18/08/2004. MERCK. Entenda e identifique um medicamento genérico. Disponível em <www.merckgenericos.com.br), acessado em 05/03/2005. MÉRITO ESCOLAR – Manual prático do estudante – São Paulo: Meca, 1994. NETO, Antônio Braz da Silva. Introdução aos algoritmos genéticos. Escola de Informática: Grupo de pesquisa em inteligência artificial. Universidade Católica de Pelotas – ECPel, Rio Grande do Sul. O’BRIEN, James A. Sistemas de informação e as decisões gerenciais na era da internet. 9.ed. São Paulo: Saraiva, 2001. 430 p. 107 OLIVEIRA, Jailton José de. Sistemas de apoio à decisão. http://cazarini.cpd. eesc.sc.usp.br/Sem210/1999/Mod/HOME1.html. Acesso em 08/05/2002. QUEIROZ, S. e GONZÁLEZ, A.J.V. 2001. Mudanças recentes na estrutura produtiva da indústria farmacêutica. IN Brasil: radiografia da saúde. Barjas Negri e Geraldo Di Giovanni. UNICAMP. 588p. PINHEIRO, Carlos José reis. Implementação de aplicações OLAP no ambiente Delphi. Disponível em (www.geocities.com/acfconsult/artigo02.htm). Acessado em 20/08/2004. ROMANO, R. e BERNARDO, P.J. B. 2001. Padrões de regulação de preços do mercado de medicamentos: experiência brasileira doa anos 90 e novos arranjos institucionais. IN Brasil: radiografia da saúde. Barjas Negri e Geraldo Di Giovanni. UNICAMP. 588p. TAFNER, Malcon Anderson. Redes Neurais Artificiais: Aprendizado e plasticidade. Revista Cérebro e Mente, Rio de Janeiro, v.3, n.5, março/maio 1998. VELLASCO, Marley et al. Descoberta de conhecimento e mineração de dados. Rio de Janeiro: PUC, 1999.