Mineração de dados com Market Basket Analysis - Revista SQL Magazine 111
Neste artigo teremos abordaremos a mineração de dados conhecida como market basket analysis onde, a partir de um pequeno exemplo, são descritos os principais conceitos associados a esta tarefa tais como regras de associação, entre outros.
ArtigosBanco de DadosMineração de dados com Market Basket Analysis - Revista SQL Magazine 111
Artigo do tipo Tutorial
Recursos especiais neste artigo: Contém nota Quickupdate, Conteúdo sobre boas práticas.
Mineração de dados com Market Basket Analysis A mineração de
dados pode ser descrita como análise de dados exploratória. O objetivo é
procurar padrões interessantes nos dados, padrões que possam ser usados para
definir a estratégia do negócio ou para identificar um comportamento pouco
usual.
Neste contexto,
este artigo aborda a tarefa de mineração de dados conhecida como market basket
analysis e está dividido em três partes. A primeira é teórica, onde a partir de
um pequeno exemplo, são descritos os principais conceitos associados a esta
tarefa, tais como regras de associação, medidas de interesse, itemsets
frequentes, entre outros. A segunda parte é prática, apresentando os passos
necessários para utilizar a funcionalidade de análise de cestas de compras
oferecida pela ferramenta Weka. A terceira parte é avançada, ilustrando
mostrando a forma básica de utilização das classes “Apriori”,
“AssociationRules” e “AssociationRule” da Weka API.
Market basket analysis (análise de cestas de compras) é
considerada por muitos a mais simples das tarefas de data mining. Apesar disso,
possui um enorme número de aplicações práticas, dentre elas a análise de
padrões de compras, os sistemas de recomendação e a análise de logs de servidores Web. O objetivo da
tarefa é identificar combinações de itens que ocorrem frequência significativa
em bancos de dados. Este artigo apresenta
e descreve as principais
etapas envolvidas em processos práticos de market
basket analysis.
Em que situação o tema útil O artigo destina-se tanto a leitores
iniciantes como aos mais experientes no tema. Os primeiros poderão conhecer os
principais conceitos, aplicações e características da tarefa de market basket analysis. Além disso,
descobrirão como utilizar esta funcionalidade na ferramenta de mineração de
dados Weka. E para os leitores mais experientes, o artigo apresenta um tema ainda
muito pouco explorado: a criação de programas Java para market basket analysis com o uso da biblioteca Weka API.
Coloque-se
no lugar de um gerente de um hipermercado (ou de uma loja de departamentos, ou
de uma livraria, etc.). Sem dúvida alguma, uma de suas principais
responsabilidades é tomar todas as ações necessárias para conseguir vender o
máximo possível de seus produtos. O objetivo a ser atingido é claro: vender
mais e gerar mais lucro do que os seus concorrentes. Neste sentido, é
fundamental que você identifique e compreenda os padrões de compras de seus consumidores
para se tornar bem-sucedido. Você pode estar se perguntando: “mas como será
possível identificar esses tais ‘padrões de compra’ se existem tantos clientes
e tantos produtos?”. Normalmente, há uma
única forma viável para realizar essa tarefa: procurá-los dentro do próprio
banco de dados da sua empresa. No entanto, a tarefa não é muito simples, uma
vez que os padrões normalmente estão escondidos no meio de tantas milhões de
linhas e tantas centenas colunas que se torna impossível identificá-los através
de métodos tradicionais, como planilhas Excel ou com o uso de consultas na
linguagem SQL.
É
aqui que entram os algoritmos para market basket analysis (análise de cestas de
compras). Trata-se de uma tecnologia especialmente criada com o objetivo de descobrir
combinações de itens que ocorrem com frequência acima do esperado em uma base
de dados. A partir das combinações de itens consideradas interessantes do ponto
de vista estatístico, os algoritmos de market basket analysis geram um conjunto
de regras de associação para os usuários. Para que a coisa não fique muito
abstrata, o exemplo a seguir ilustra um padrão real que foi automaticamente descoberto
por um algoritmo de market basket analysis. A descoberta do padrão ocorreu após
a mineração de dados de uma base de dados contendo registros de produtos
adquiridos por famílias cariocas em suas compras mensais:
·
“70% dos clientes que compram o produto
‘strogonoff de frango (caixa)’ também compram o produto ‘lasanha (caixa)’. 5,5%
de todas as compras contêm os dois produtos”.
·
Representação: {strogonoff de frango (caixa)} =>
{lasanha (caixa)}
O
exemplo ilustra a característica mais atrativa das regras de associação: elas
são expressas em uma forma muito fácil de ser compreendida por qualquer pessoa.
As
regras de associação representam uma importantíssima ferramenta de apoio ao
processo de tomada de decisão nas empresas. Voltando ao exemplo citado no
início do artigo, podemos perceber que o processo de market basket analysis
auxiliaria o gerente de nosso hipermercado hipotético encontrar respostas para
perguntas como as que são mostradas na Figura
1.
Figura
1. A
análise de cestas de compras auxilia o processo de tomada de decisão
Ao
longo dos anos, a análise de cestas de compras se tornou uma das mais
utilizadas tarefas de mineração de dados. Este artigo possui o objetivo de
oferecer uma visão prática sobre as suas características e as aplicações. O
restante do artigo está dividido em três partes. Na primeira, apresentam-se
conceitos básicos sobre o assunto. São abordados temas como base de dados
transacional, medidas de interesse e desafios enfrentados pelos algoritmos de
market basket analysis. A segunda parte do artigo é prática, apresentando como executar
a funcionalidade de market basket analysis implementada na ferramenta Weka, com
o uso de sua interface gráfica Explorer. Já a terceira e última parte do artigo
é avançada, sendo destinada a desenvolvedores que possuem experiência em mineração
de dados e na linguagem Java. Mostramos como criar um programa Java que
configura e executa um dos algoritmos de mineração de regras de associação
oferecido pela Weka API (algoritmo Apriori).
Entendendo o processo
de Market Basket Analysis
Nos
tópicos a seguir apresentamos os conceitos mais importantes sobre market basket
analysis.
Regras
de Associação
Conforme
foi dito na introdução desse artigo, o processo de análise de cestas de compras
emprega algoritmos para identificar padrões de relacionamento entre itens de
uma base de dados. Uma das características mais interessantes do processo é que
os padrões descobertos são expressos para o usuário na forma de regras de
associação. Uma regra de associação é representada de uma forma muito
intuitiva, através de uma expressão que tem o formato apresentado na Figura 2.
Figura
2. Representação
de uma regra de associação.
Nesta
representação, A é chamado de antecedente (ou LHS – left hand side) e B é o
consequente (ou RHS – right hand side) da regra. O conceito por trás desta
representação é indicar que, numa base de dados, a probabilidade de ocorrência
de B é maior entre os registros que contém A. Ou seja, a ocorrência do evento A
aumenta a chance do evento B ocorrer. É permitido que tanto o antecedente como
o consequente sejam formados por conjuntos contendo um ou mais itens.
Oferta válida para todos os planos durante o mês de dezembro
+3 MESES
Grátis
Veja os resultado dos nossos alunos
Conquistas reais de quem está aplicando o método
<Perguntas frequentes>
Carreira
Por onde devo iniciar os estudos?
Recomendamos começar pelo Plano de Estudo Carreira Programador Front-End. Essa área da programação é mais visual e intuitiva, tornando-a ideal para iniciantes. No Front-End, você aprenderá a criar a parte visual dos sites, como layout, cores e interatividade. Depois de dominar o Front-End, você pode avançar para Programador Back-End, onde aprenderá a lidar com a lógica e o funcionamento interno dos sites, e, finalmente, para Programador Mobile, focando no desenvolvimento de aplicativos para smartphones. Nossa metodologia é estruturada de forma progressiva para garantir que você desenvolva confiança e experiência ao criar projetos reais, como sites estáticos e dinâmicos.
Em quanto tempo vou me tornar um programador?
O tempo necessário para se tornar um programador varia de acordo com a dedicação de cada estudante. Com nossa metodologia, que inclui um Plano de Estudo detalhado e suporte contínuo, você pode se tornar um programador de 6 meses a um ano, dependendo do seu ritmo e esforço. Nossa abordagem prática e orientada a projetos ajudará a acelerar seu aprendizado.
Eu preciso de um diploma de faculdade para começar a atuar como programador?
Não. Ser programador é uma excelente oportunidade para quem não possui diploma de faculdade. Muitas empresas contratam baseadas nas habilidades técnicas e experiência prática, não necessariamente em diplomas. Após conquistar uma vaga, você pode optar por complementar sua formação com um diploma.
Por que a programação se tornou a profissão mais promissora da atualidade?
A necessidade de programadores cresceu exponencialmente, especialmente após a pandemia de Covid-19, que forçou muitas empresas a se adaptarem ao digital. Com o crescimento das empresas de tecnologia, a demanda por programadores aumentou. Atualmente, há mais de 200 mil vagas abertas no Brasil devido à falta de profissionais qualificados.
Metodologia
Quais são os principais diferenciais da DevMedia?
Didática e Metodologia
Com mais de 20 anos de experiência, nossa metodologia foca em menos aulas e mais prática. Desenvolvemos dezenas de projetos e exercícios para ajudar você a se tornar um programador completo. Nossos projetos são desafiadores e autênticos, não apenas exercícios repetitivos.
Projetos reais e exercícios
Você desenvolverá diversos projetos práticos em cada carreira (Front-End, Back-End e Mobile), recebendo mentoria e suporte contínuo. A prática é essencial, e oferecemos milhares de exercícios para ajudar você a fixar o conteúdo e melhorar sua posição no ranking.
Suporte ao aluno
Nossa plataforma oferece suporte dedicado com professores experientes, respondendo suas dúvidas em menos de uma hora. Isso garante que você receba a ajuda necessária durante toda a sua jornada de aprendizado.
Gamificação
A DevMedia utiliza gamificação para tornar o aprendizado mais envolvente e motivador. Você acumula pontos e moedas por acertos, que podem ser trocados por produtos e customizações no seu card pessoal. Além disso, o sistema de ranking mensal incentiva a competição amigável e a melhoria contínua.
O que eu irei aprender estudando pela DevMedia?
Ao estudar conosco, você se tornará um programador Full Stack, dominando Front-End, Back-End e Mobile. Utilizamos a linguagem JavaScript, a mais utilizada no mercado, preparando você para criar sistemas webs e aplicativos celulares. Nossa abordagem prática inclui exercícios para fixar o conhecimento e desenvolvimento de projetos reais que te preparam, para o mercado de trabalho.
Quais as vantagens de aprender programação através da linguagem JavaScript?
Ela é Multiplataforma, ela vai te permitir programar para web e para celulares utilizando praticamente a mesma sintaxe.
Elá é Full Stack. Ela te permite criar aplicações Front-end, Back-end e Mobile. Isso acelera muito sua carreira e aumenta suas possibilidades de pegar trabalhos autônomos e conquistar uma vaga no mercado.
Ela é fácil de aprender. Como ela não exige conhecimento inicial em “Orientação a Objetos” ela se torna mais simples com uma curva de aprendizado suave e vai te permitir começar a programar mais rápido do que outras linguagens
A plataforma oferece certificados?
Sim, oferecemos dois tipos de certificados: o certificado de conclusão, que você adquire ao consumir o conteúdo, e o certificado de autoridade, que você obtém ao acertar exercícios. Ambos possuem carga horária, que pode ser utilizada para fins acadêmicos, como atividades complementares na faculdade, e também para comprovações em processos seletivos ou no seu currículo.
A plataforma tem suporte ao aluno, como funciona?
Sim, temos uma equipe de programadores pronta para ajudar com todas as suas dúvidas! Durante o horário comercial, o tempo médio de resposta é de até 10 minutos. E não se preocupe, também oferecemos suporte à noite e nos finais de semana, com um prazo de resposta um pouco maior.
A DevMedia me forma como programador Full Stack?
Sim! Oferecemos uma formação completa, do zero até Full Stack. Nosso foco é na prática, então você vai encontrar muitos exercícios e projetos reais ao longo do curso. Garantimos que você sairá com a autonomia necessária para desenvolver seus próprios projetos com confiança!
Tem horário para as aulas?
Não, não temos horários fixos para as aulas. Todo o nosso conteúdo está disponível para você acessar a qualquer momento, permitindo que você estude conforme sua própria disponibilidade e ritmo. Dessa forma, você pode integrar o aprendizado à sua rotina de maneira mais flexível e eficaz.
Por que a DevMedia não usa videoaulas em sua didática?
Nosso foco principal é formar programadores de verdade. Sabemos que o dia a dia de um programador envolve muita leitura, interpretação e escrita de código. Por isso, nosso conteúdo é desenvolvido para ambientar você nesse processo desde o início, proporcionando mais autonomia e acelerando seu aprendizado.
Na vídeo-aula é o professor que está lendo, interpretando e escrevndo o código para você, isso limita o seu progresso. Ao ler e interagir diretamente com o conteúdo, você exercita sua capacidade de leitura e concentração, além de poder avançar no seu próprio ritmo. Dessa forma, você se torna um programador mais independente e preparado para os desafios reais do mercado.
Preciso de um computador específico para estudar na DevMedia?
Não é necessário nada específico. Qualquer computador com processador atual e memória de 8 GB é suficiente.
Eu consigo estudar pelo celular?
Sim, a DevMedia possui um aplicativo que te permite seguir com seus estudos de qualquer lugar.
A DevMedia tem aplicativo?
Sim, nosso aplicativo está disponível na Play Store e na Apple Store, permitindo que você estude de forma prática e conveniente em qualquer lugar.
Preciso estar na faculdade para acompanhar os estudos na DevMedia?
Não, a faculdade não é necessária. Você não precisa de nenhum conhecimento prévio para iniciar os estudos na nossa plataforma.
Assinatura e Pagamentos
Quais são os planos de assinatura disponíveis?
Oferecemos o plano anual, o valor total é lançado no cartão de crédito, parcelado em 12 vezes, e você precisa dispor do valor total no limite do seu cartão. Você também pode optar por pagar no PIX
Adquirindo o plano, terei acesso a todo o conteúdo?
Sim, ao assinar nossa plataforma, você desbloqueia acesso total a todo o nosso conteúdo, sem precisar comprar nada separadamente.
A plataforma tem planos vitalícios?
Não, nossos planos são anuais, garantindo que você tenha acesso contínuo às atualizações mais recentes e aos novos conteúdos. A tecnologia evolui rapidamente, e um plano vitalício oferece um conteúdo estático que se tornará ultrapassado em pouco tempo. Com nossos planos anuais, você está sempre à frente, aprendendo as novidades e tendências mais atuais no mundo da programação.
A DevMedia tem fidelidade?
Sim, nosso plano tem uma fidelidade de 12 meses, o que garante o tempo ideal para você explorar nosso conteúdo e desenvolver a autonomia necessária para trabalhar com programação.
Como funciona o cancelamento?
Nós garantimos seu direito de cancelamento com reembolso total dentro dos primeiros 7 dias.
Para que você aproveite ao máximo seu investimento, oferecemos suporte personalizado para orientá-lo na utilização da plataforma. Também temos a opção de transferência de titularidade do plano, permitindo que outra pessoa aproveite o restante do seu período de assinatura.
Cadastro
Como excluir meus dados da plataforma?
Para excluir seus dados da plataforma, acesse o link : https://www.devmedia.com.br/fale-conosco/ e abra um protocolo de 'Exclusão de dados'. Nossa equipe processará a solicitação e removerá todas as informações do seu cadastro.
Compartilhe esse conteúdo com um amigo!
Faça login para ganhar recompensas.
Ou
Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.