Anais do Encontro Regional de Computação e Sistemas de Informação Uso de descoberta do conhecimento em base de dados de uma Rede de Farmácias Leonardo Akira Matsuzaki¹, Márcio Palheta Piedade¹, Marcela Sávia Picanço Pessoa¹ ¹Sistemas de Informação – Centro de Ensino Superior FUCAPI - CESF Manaus – AM [email protected], [email protected], [email protected] Abstract. This paper aims to uncover buying patterns by using data mining techniques in a pharmacies chain, extracting information from customers' purchases and creating a model to analyze the results. Thus, it is possible to demonstrate the steps for model building, creating a support tool that helps managers to get information previously unavailable, helping in decision making. Resumo. Este artigo tem como objetivo descobrir padrões de compra através do uso de técnicas de mineração de dados, em uma base de dados de uma rede de farmácias, extraindo informações das compras dos clientes e criando um modelo para análise dos resultados. Neste trabalho, são descritos os passos necessários à construção de um modelo que pode servir de instrumento de apoio aos gestores, uma vez que apresenta informações que estavam indisponíveis anteriormente, além de contribuir para o processo de tomada de decisões. 1. Introdução Com a concorrência acirrada do mercado atual, toda empresa deseja se destacar perante seus concorrentes, buscando produtos e serviços diferenciados para conquistar novos clientes, além de fidelizar os atuais. Portanto, obter o maior número de informações possíveis para definir estratégias de marketing, abastecimento de lojas e saber quais produtos colocar nas prateleiras, é essencial para os gestores de uma empresa (Braga, 2000). Dúvidas a respeito do que os clientes pensam, quais são os produtos mais comprados em conjunto, qual foi o resultado de uma campanha de marketing e quais produtos abastecer em cada loja, motivaram as empresas a utilizarem técnicas de mineração de dados, ou data mining. Através destas é possível inferir evidências a partir do grande número de informações geradas atualmente e armazenadas em bancos de dados, atividade que ultrapassa a capacidade humana de interpretação desses dados (Machado, 1999). A mineração de dados consiste em analisar dados de diferentes perspectivas e resumi-los em informação útil, cuja qual pode ser utilizada para aumentar a receita da empresa e cortar gastos. Outro aspecto importante da mineração de dados é o fato de permitir que os usuários verifiquem os dados em diversos ângulos, categorizando-os e identificando relacionamentos, podendo criar padrões e descobrir novas tendências a partir dos dados trabalhados (Machado, 1999). Este artigo consiste em descobrir padrões de compra na base de dados de uma rede de drogarias, utilizando técnicas de mineração de dados, onde o processo de descoberta do conhecimento ocorre através da realização das fases de 1) verificação e extração dos dados, de acordo com a finalidade da pesquisa, 2) análise e limpeza dos dados, onde valores desnecessários serão eliminados ou inválidos, preparando o arquivo base para a importação no programa de mineração e 3) aplicação de algoritmos de mineração de dados na base gerada. Manaus, 31 de maio a 02 de junho de 2012 1 ISSN 2238-5096 (CDR) Anais do Encontro Regional de Computação e Sistemas de Informação 2. Trabalhos relacionados Oliveira (2005) apresentou em seu trabalho: “Aplicação de Algumas Técnicas de Data Mining em Bancos de Dados utilizando o Weka”, que com o uso da ferramenta WEKA, é possível analisar os dados a procura de padrões que tenham valor para a organização. O trabalho mostrou que o Data Mining é parte de um processo maior conhecido como Descoberta de Conhecimento em Bases de Dados, ou KDD (Knowledge Discovery in Databases), que consiste na busca de conhecimentos em bancos de dados e que, de acordo com cada problema, uma técnica de mineração de dados deve ser utilizada para que o resultado seja o mais satisfatório possível. Contudo, todo o processo de KDD ainda necessita que os dados sejam pré-processados, para assegurar o melhor aproveitamento da aplicação e a consistência dos resultados, devido à grande quantidade de dados brutos existentes nos bancos. Schonhorst (2010) apresentou em seu trabalho: “Mineração de Regras de Associação Aplicada à Modelagem dos Dados Transacionais de um Supermercado”, a utilização das regras de associação, que é uma das regras pertencentes à mineração de dados, onde analisando o cesto de compras de um Supermercado, também conhecido como MBA (Market Basket Analysis), é possível descobrir relações entre os produtos comprados pelos clientes nas vendas, caracterizando o quanto a presença de um conjunto de itens implica na presença de outro conjunto de itens no mesmo registro, onde: “Um cliente que compra o item A frequentemente compra também o item B”. O processo de modelagem foi realizado em quatro etapas: Extração, Pré-processamento, Mineração de Dados e Pós-processamento. Na extração, foram selecionadas as informações da base de dados do supermercado, como a data da venda, os produtos registrados, categorias, entre outros. Após a extração, foi realizado um pré-processamento, onde os dados foram colocados nos formatos adequados e os dados faltantes e inconsistentes foram corrigidos. Em seguida, a etapa de mineração de dados executa o algoritmo de mineração em cima da base de dados préprocessada, extraindo padrões desconhecidos dessa base. Na etapa final, foi realizado um pósprocessamento dos dados, onde os dados extraídos passaram por um processo de avaliação, informando se o conhecimento extraído é interessante ao usuário. 3. Metodologia A realização desta pesquisa envolveu as seguintes etapas: Revisão bibliográfica da literatura, para determinar outras pesquisas similares a esta, onde são aplicadas técnicas de mineração de dados para descoberta de conhecimento em grandes bases de dados. Esta etapa também foi constituída de uma revisão sistemática da literatura a cerca da área de mineração de dados. A segunda etapa foi responsável pela obtenção da base de dados contendo registros de vendas de produtos em farmácias, tais como: data da venda, produtos registrados e categorias envolvidas. Nesta etapa não foi realizado estudo sobre impacto dos atributos selecionados no resultado das inferências. As características utilizadas foram selecionadas, pois, além de serem as que apresentam menos ruídos, são as que agregam maior significado para negócio. Para tanto, foram utilizadas as informações de uma rede de drogarias situada na cidade de Manaus – AM. A rede possui 34 farmácias e realiza a venda de várias categorias de produtos, como medicamentos, produtos de conveniência, cosméticos, entre outros. A pesquisa abrange as vendas realizadas e armazenadas em um banco de dados, de onde se deseja extrair associações de compra dos produtos adquiridos pelos clientes. Na etapa de extração, limpeza e pré-processamento dos dados, foi analisada a base de produção e foram extraídos os dados necessários à pesquisa, buscando a consistência dos dados, o preenchimento padronizado de dados ausentes, a remoção de ruídos e a normalização de alguns dados. Esta etapa foi desenvolvida a partir de uma amostra de vendas realizadas durante a primeira semana do ano de 2012 (01/01/2012 a 07/01/2012), contendo todos os dias da semana para análise. Além dos atributos relatados anteriormente, foram selecionados os dados de data da venda, horário, filial em que a venda ocorreu e todos os produtos vendidos. Manaus, 31 de maio a 02 de junho de 2012 2 ISSN 2238-5096 (CDR) Anais do Encontro Regional de Computação e Sistemas de Informação A quarta etapa é a execução de algoritmos de mineração de dados, buscando a identificação de padrões na base pré-processada. Para isto estão sendo utilizadas as implementações dos algoritmos de mineração de dados disponibilizados pela ferramenta WEKA (Waikato Environment for Knowledge Analysis), por se tratar de um software open source, que possui diversas técnicas e algoritmos diferentes de data mining. Para que os dados possam ser utilizados na ferramenta Weka, os mesmos necessitam estar na estrutura e no formato padrão solicitado, conforme ilustra a Figura 1. Atualmente o trabalho encontra-se em fase de busca do melhor algoritmo. Até este momento da pesquisa, a exemplo do que acontece em Schonhorst (2010), o algoritmo para mineração de regras de associação Apriori mostrou melhores resultados quando comparado com as associações humanas. Segundo Amo (2010) o algoritmo Apriori é o mais utilizado para geração dos itens mais freqüentes dentro de um conjunto de dados. Trabalha com variáveis de suporte (acurácia) e confiança. Por exemplo, em uma compra de bepantol e fralda, o suporte foi de 40% e a confiança de 60% pois, de 40% das vendas realizadas, bepantol e fralda foram vendidos juntos e, em 60% das vendas de bepantol também foi incluída fralda. Dessa forma, é possível analisar as associações da cesta de compra dos clientes. No entanto, a pesquisa será continuada e outras técnicas de mineração de dados, como por exemplo, algoritmos de classificação, serão utilizadas. Além disso, será analisado o impacto de cada atributo no resultado final dos algoritmos que apresentarem os melhores resultados. Espera-se que, além de encontrar o melhor algoritmo, ao final desta pesquisa sejam descritos o melhor conjunto de atributos para este tipo de aplicação. Figura 1. Exemplo da estrutura do formato ARFF do WEKA. Após concluir os experimentos, os resultados serão avaliados buscando verificar se as informações descobertas representam conhecimento relevante ao negócio de drogarias. Como uma das fases mais importante para a mineração de dados é o processamento dos dados, a seção seguinte descreve como os dados foram levantados e organizados para serem utilizados pelos algoritmos. 4. Processamento dos dados Na extração das informações, foi utilizada a ferramenta SQL Server 2008 R2, com consultas feitas através de query. Uma vez que na base de dados existiam informações referentes a outro segmento, alheio ao das drogarias, tais informações foram retiradas com o intuito de focar somente nas farmácias. Entre as informações extraídas estavam inclusos muitos produtos iguais na mesma venda, esses produtos foram retirados, pois o objetivo inicial é identificar a associação de itens diferentes nas compras Manaus, 31 de maio a 02 de junho de 2012 3 ISSN 2238-5096 (CDR) Anais do Encontro Regional de Computação e Sistemas de Informação dos clientes, e não a quantidade de itens iguais. Essas associações consistem em descobrir quais mercadorias possuem uma relação na compra de outras mercadorias como, por exemplo: “Um cliente que compra Bepantol (geralmente utilizado para assaduras) frequentemente leva fraldas”. Nos testes iniciais, após a obtenção das informações na mesma linha, o resultado foi transferido para uma planilha e salvo em formato CSV (Comma-separated values). Em seguida, foram realizadas as devidas correções, com o intuito de deixar o arquivo no formato esperado para importação. Após todas as alterações, o arquivo foi salvo em formato ARFF (padrão dos arquivos da Ferramenta WEKA). Foram inseridos o título e os atributos das informações contidas no arquivo. Após a estruturação do arquivo, foi realizada a importação para o WEKA, utilizando a opção de pré-processamento da ferramenta. 5. Resultados esperados Espera-se que ao final dos experimentos seja possível ter um conjunto das melhores características para serem utilizadas e estas sejam tomadas como base para outros trabalhos na área de mineração de dados. Além disso, espera-se utilizar no mínimo quatro algoritmos de Associação, além do algoritmo Apriori que já está em uso. Pretende-se avaliar o impacto de cada atributo (feature) escolhido na qualidade das regras geradas para cada algoritmo de Associação. Para avaliar a qualidade das regras geradas pretende-se utilizar o casamento dos produtos em uma das lojas e verificar se os resultados melhoram quando comparados com lojas que não utilizam as associações sugeridas pelos algoritmos. 6. Conclusão e trabalhos futuros Apesar do trabalho não estar concluído observou-se empiricamente que o algoritmo Apriori fornece melhores regras quando comparadas com as regras humanas. Algumas etapas demandaram muito tempo, como, por exemplo, a preparação da base de dados. Os dados estavam armazenados em um banco de dados de forma bruta e tiveram que passar por uma transformação para poderem ser utilizados pela Ferramenta WEKA. Todos os ruídos foram eliminados, alguns dados foram completados e linhas duplicadas foram excluídas. Como a fase de pré-processamento, que demanda mais tempo, foi concluída, pretende-se avançar nos experimentos utilizando o algoritmo Apriori, avaliando o impacto dos atributos no desempenho deste algoritmo e a inclusão de novos algoritmos de associação para avaliar o desempenho das regras geradas. É importante, ainda, avaliar se os resultados encontrados foram relevantes, e caso não sejam, há a possibilidade de alterar as variáveis do modelo, a fim de conseguir melhor resultado. Referências Braga, Rosana. (2000) Data Mining: “Base de dados orienta empresa na decisão estratégica”, Gazeta Mercantil Pág.7. Machado, Carlos. (1999) O abc da mineração de dados: “Como a data mining pode ajudar os executivos a tomar decisões bem fundamentadas”¸ Info edição 154. Oliveira, Alessandra M. (2005) “Aplicação de Algumas Técnicas de Data Mining em Bancos de Dados utilizando o Weka”, Artigo. Schonhorst, Gustavo Bonnard. (2010) Mineração de Regras de Associação Aplicada à Modelagem dos Dados Transacionais de um Supermercado. S371m. Dissertação (Programa de Pós-Graduação em Engenharia de Produção) - Universidade Federal de Itajubá, Minas Gerais. Amo, Sandra (2010) Curso de Data Mining – Aula 2 – Mineração de Regras de Associação – O algoritmo APRIORI. Manaus, 31 de maio a 02 de junho de 2012 4 ISSN 2238-5096 (CDR)