Prévia do material em texto
TEMA DE APRENDIZAGEM 4 IMPLEMENTAÇÃO DE ALGORITMOS DE REGRAS DE ASSOCIAÇÃO: GROWTH MINHAS METAS Compreender o funcionamento do algoritmo FP-Growth. Conhecer as equações e fórmulas matemáticas envolvidas no algoritmo FP-Growth, incluindo cálculos de suporte, confiança e lift. Desenvolver a capacidade de implementar algoritmo FP-Growth em Python. Analisar os resultados da execução do algoritmo FP-Growth. Compreender impacto dos parâmetros do algoritmo FP-Growth na qualidade e na quantidade dos padrões frequentes e regras de associação geradas. Comparar e contrastar algoritmo FP-Growth com o algoritmo Apriori. Entender as aplicações práticas do algoritmo FP-Growth. 7 2UNIASSELVI INICIE SUA JORNADA Imagine que você trabalha em uma empresa de varejo e está encarregado de analisar os padrões de compra dos clientes para otimizar as estratégias de vendas. No entanto, lidar com grandes volumes de dados de transações de compras pode ser desafiador e demorado. Como você pode identificar os padrões de compra mais frequentes de forma eficiente e escalável? A resolução dessa problemática é de extrema importância, pois permite à empresa entender melhor o comportamento de compra dos clientes, identificar produtos frequentemente comprados juntos e oferecer recomendações persona- lizadas. Isso pode levar a um aumento nas vendas, melhorando a satisfação do cliente e maximizando os lucros. Uma maneira eficaz de resolver esse problema é utilizando o algoritmo FP-Gro- wth em Regras de Associação. Com o FP-Growth, é possível identificar rapidamente os conjuntos de itens frequentes nas transações de compra dos clientes. Por exem- plo, ao analisar os dados de vendas de um supermercado, podemos descobrir que os clientes que compram pão também tendem a comprar leite e ovos. Isso permite à empresa criar estratégias de marketing direcionadas, como colocar esses itens próximos uns dos outros nas prateleiras ou oferecer descontos em conjunto. A implementação do algoritmo FP-Growth em Regras de Associação não apenas facilita a análise de grandes volumes de dados, mas também abre novas oportunidades de negócios e insights valiosos sobre o comportamento do cliente. No entanto, é importante lembrar que a análise de dados deve ser feita de forma ética e responsável, respeitando a privacidade e os direitos dos consumidores. Além disso, é essencial continuar explorando novas técnicas e abordagens para aprimorar ainda mais a análise de padrões de compra e oferecer uma experiência de compra excepcional aos clientes. PLAY NO CONHECIMENTO A seguir, iremos fazer uma breve explanação dos principais conceitos inerentes ao algoritmo FP-Growth como uma alternativa para processo de descoberta de regras de associação em mineração de dados. Vamos ouvir um podcast que irá abordar os principais conceitos do Algoritmo FP-Growth assim como suas limita- ções e as principais áreas de aplicação. Recursos de mídia disponíveis no conteú- do digital do ambiente virtual de aprendizagem. 3TEMA DE APRENDIZAGEM 4 VAMOS RECORDAR? No vídeo a seguir, vamos resgatar diversas questões relacionadas ao Algoritmo A Priori e como algoritmo FP-Growth irá tratar essas situações: DESENVOLVA SEU POTENCIAL ALGORITMO FP-GROWTH: UMA ABORDAGEM EFICIENTE PARA MINERAÇÃO DE PADRÕES FREQUENTES A mineração de padrões frequentes é uma técnica essencial na análise de dados, permitindo a descoberta de padrões relevantes em grandes conjuntos de dados transacionais (Witten et al., 2016). Muitos algoritmos desenvolvidos para essa tarefa acabam sendo bastante dis- pendiosos por ter que percorrer repetidas vezes a base de dados para verificar e testar todos os conjuntos de candidatos e seus padrões correspondentes. Com o objetivo de superar essas limitações e melhorar a eficiência da descoberta de regras de associação diversos métodos e algoritmos alternativos têm sido desen- volvidos. Como por exemplo, o algoritmo FP-Growth que utiliza uma abordagem diferente do Apriori, sem a geração do conjunto de candidatos (Nandi et al., 2014). O FP-Growth (Frequent Pattern Growth) destaca-se por sua eficiência e escalabilidade. Neste texto, exploraremos em detalhes o funcionamento do al- goritmo FP-Growth, sua implementação em Python, representações de dados utilizados, limitações e diversas áreas de aplicação. Ao contrário do algoritmo APriori, o FP-Growth utiliza uma abordagem sem a geração do conjunto de candidatos. Também não utiliza o paradigma de gerar e testar do Apriori, ao contrário disso, codifica o conjunto de dados em uma es- trutura de dados compacta em forma de árvore chamada Frequent Pattern tree (FP-tree) e extrai os conjuntos de itens frequentes diretamente dessa estrutura. Isso possibilita uma melhor eficiência na geração das regras de associação, pois evita constantes acessos na base de dados (Tan; Steinbach; Kumar 2009). 7 4UNIASSELVI Funcionamento do Algoritmo FP-Growth O algoritmo FP-Growth foi proposto por Han, Dong e Yin (2000) como uma al- ternativa ao tradicional Apriori. Ele se baseia em uma estrutura de dados chama- da FP-Tree (Frequent Pattern Tree), que permite representar de forma compacta os padrões frequentes presentes nos dados. O algoritmo necessita de no mínimo dois parâmetros de entrada (Tan; Stein- bach; Kumar 2009): a) Suporte: é a métrica utilizada pelo algoritmo para encontrar todos os N itemsets. suporte de uma regra de associação X, A B, é a porcen- tagem das transações que contêm A em relação ao número total de transações analisadas; b) Confiança: calcula a força da regra. Assim, sendo C a confiança de uma regra de associação, A => B, C é na verdade a porcentagem das transações que contêm A U B em relação a todas as transações que contêm A. Vamos considerar as seguintes transações para a exemplificação do uso do al- goritmo: Transações Pão Manteiga Leite Café Adoçante T1 Sim Sim Sim Não Não T2 Não Sim Sim Sim Não T3 Não Não Não Sim Sim T4 Sim Sim Não Sim Não T5 Sim Sim Sim Não Sim T6 Sim Sim Sim Sim Não Tabela 1 - Transações efetuadas / Fonte: o autor.TEMA DE APRENDIZAGEM 4 O funcionamento do algoritmo pode ser dividido em algumas 1. Construção da FP-Tree: a primeira etapa é construir a FP-Tree a partir do conjunto de transações. Isso envolve a contagem da frequência de cada item e a organização dos itens em uma estrutura de árvore hierárquica, onde cada nó representa um item e suas ramificações representam as transações que contêm esse item. Inicialmente, vamos obter a frequência para conjuntos com 1 ítem (1-itemset): Itens No Transações Pão 4 Manteiga 5 Leite 4 Café 4 Adoçante 2 Tabela 2 - Frequência de o autor. Considerando um minsup = 50% e eliminando os itens que não alcançam esse limiar e ordenando em ordem decrescente de frequência temos: Itens No Transações Manteiga 5 Pão 4 Leite 4 Café 4 Tabela 3 Frequência de 1-itemset ordenado / Fonte: o autor. 7 6UNIASSELVI Baseado na ordem de frequência na Tabela 3, ordenamos os itens para cada tran- sação excluindo o Adoçante pelo fato deste não ter o suporte mínimo: Transações Itens Itens ordenado T1 Pão, Manteiga, Leite Manteiga, Pão, Leite T2 Manteiga, Leite, Café Manteiga, Leite, Café T3 Café, Adoçante Café T4 Pão, Manteiga, Café Manteiga, Pão, Café T5 Pão, Manteiga, Leite, Adoçante Manteiga, Pão, Leite T6 Pão, Manteiga, Leite, Café Manteiga, Pão, Leite, Café Tabela 4 - Itens ordenados pela frequência em cada transação / Fonte: o autor. Com os itens ordenados de cada transação podemos começar a construir a FP tree. A raiz da árvore sempre será NULL e cada nó carregará o item e a frequência daquele padrão. 7 7TEMA DE APRENDIZAGEM 4 Iniciando-se com a primeira transação vamos inserir os nós correspondentes aos itens na ordem em que aparecem na transação pois já foram ordenados pela sua frequência. Assim, abaixo da raiz iremos inserir na ordem: Manteiga, Leite e Pão e como será a primeira ocorrência de cada um desses itens, cada um deles estará associado a um contador que terá valor 1. Adicionando a primeira transação (T1: Manteiga, Pão, Leite) na árvore, temos: NULL Manteiga:1 Leite:1 Pão:1 Figura 1 - Árvore gerada na Iteração / Fonte: o autor. Descrição da Imagem: a figura contém a representação gráfica de uma árvore com quatro 0 primeiro nó, que é nó raiz, não contém nenhuma informação e está conectado a um segundo nó que contém a informação Este por sua vez, está ligado a um terceiro nó que contém a informação 'Leite:1' Finalmente, este último nó está conectado a um quarto nó que contém a informação Os nós estão dispostos verticalmente, com linhas conectando-os na ordem mencionada. Fim da descrição. 8UNIASSELVI Quando chegamos na segunda transação observamos os itens que já estão na árvore. Quando acontecer a ocorrência de algum item ou conjunto de itens que já esteja na árvore iremos realizar o caminho existente até a inserção do novo ítem e incrementamos os respectivos contadores. Segunda transação (T2: Manteiga, Leite, Café). Note que a contagem da Man- teiga é incrementada e um outro nó (Leite) é criado: NULL Manteiga:2 Leite:1 Leite:1 Pão:1 Café:1 Figura 2 - Árvore gerada na Iteração / Fonte: o autor. Descrição da Imagem: a figura contém a representação gráfica de uma árvore com seis 0 primeiro nó, que é o nó raiz, não contém nenhuma informação e está conectado a um segundo nó que contém a informação 'Man- teiga:2'. Este nó, por sua vez, está ligado a dois outros nós, sendo nó a sua esquerda contendo a 'Leite:1' e nó a sua direita contendo a informação: 0 nó à sua direita, por sua vez, está ligado a um outro nó que contém a informação: 0 nó da esquerda está ligado a um outro nó que contém a Os nós estão dispostos verticalmente, com linhas conectando-os na ordem mencionada. Fim da descrição. 7 9TEMA DE APRENDIZAGEM 4 Para a terceira transação, temos apenas o item: Café que ainda não apareceu na árvore de forma isolada. Dessa maneira, será criado um novo nó para o Café e seu contador será 1. Processando agora a terceira transação (T3: NULL Manteiga:2 Café:1 Pão:1 Leite:1 Leite:1 Café:1 Figura 3 - Árvore gerada na Iteração / Fonte: o autor. Descrição da Imagem: a figura contém a representação gráfica de uma árvore com sete 0 primeiro nó, que é nó raiz, não contém nenhuma informação e está conectado a dois outros nós, sendo que nó à esquerda contém a informação 'Manteiga:2', e o nó à direita contém a informação: 'Café:1' 0 nó com a informação: por sua vez, está ligado a dois outros nós, sendo nó a sua esquerda contendo a informação: 'Pão:1' e nó a sua direita contendo a informação: 'Leite:1' 0 nó que contém a informação por sua vez está ligado a um outro nó que contém a informação: 'Leite:1'. 0 nó que contém a informação 'Leite:1', por sua vez, está ligado a um outro nó que contém a informação: Os nós estão dispostos verticalmente, com linhas conectando-os na ordem mencionada. Fim da descrição. 0UNIASSELVI Para a transação: Manteiga, Pão, Café, observamos que já temos o caminho de nós: Manteiga-Pão na árvore. Dessa maneira, iremos incrementar o contador desses nós e inserir outro nó Café abaixo do nó Pão. Processando agora a quarta transação (T4: Manteiga, Pão, NULL Manteiga:3 Café:1 Pão:2 Leite:1 Leite:1 Café:1 Café:1 Figura 4 - Árvore gerada na Iteração / Fonte: Autor. Descrição da Imagem: a figura contém a representação gráfica de uma árvore com oito nós. 0 primeiro nó, que é raiz, não contém nenhuma informação e está conectado a dois outros nós, sendo que à esquerda contém a informação e à direita contém a informação: 0 nó com a informação: 'Mantei- ga:3', por sua vez, está ligado a dois outros nós, sendo o nó a sua esquerda contendo a informação: 'Pão:2' e nó a sua direita contendo a informação: 'Leite:1'. 0 nó que contém a informação 'Pão:2', por sua vez está ligado a dois outros nós, sendo que nó à esquerda contém a informação: 'Leite:1' e nó à direita contém a informação 0 nó que contém a informação 'Leite:1', por sua vez, está ligado a um outro nó que contém a Os nós estão dispostos verticalmente, com linhas conectando-os na ordem mencionada. Fim da descrição.TEMA DE APRENDIZAGEM 4 Para a transação com os ítens: Manteiga, Pão e Leite observamos que já existe esse caminho de nós na árvore, de maneira que iremos apenas incrementar os respectivos contadores desses nós. Processando agora a quinta transação (T5: Manteiga, Pão, Leite): NULL Manteiga:4 Café:1 Pão:3 Leite:1 Leite:2 Café:1 Café:1 Figura 5 - Árvore gerada na Iteração / Fonte: o autor. Descrição da Imagem: a figura contém a representação gráfica de uma árvore com oito 0 primeiro nó, que é o raiz, não contém nenhuma informação e está conectado a dois outros nós, sendo que o nó à esquerda contém a informação e o nó à direita contém a informação: nó com a informação: 'Mantei- ga:4', por sua vez, está ligado a dois outros nós, sendo nó a sua esquerda contendo a informação: 'Pão:3' e o nó a sua direita contendo a informação: 'Leite:1' 0 nó que contém a informação por sua vez está ligado a dois outros nós, sendo que o nó à esquerda contém a informação: 'Leite:2' e o nó à direita contém a informação 0 nó que contém a informação 'Leite:1', por sua vez, está ligado a um outro nó que contém a Os nós estão dispostos verticalmente, com linhas conectando-os na ordem mencionada. Fim da descrição. 8 2UNIASSELVI Finalmente na última transação temos os itens: Manteiga, Pão, Leite e Café e ob- servamos que já existe o caminho de itens: Dessa maneira iremos incrementar o contador desses nós e incluir ao final mais um nó Processando a última transação (T6: Manteiga, Pão, Leite, temos a nossa FP tree: NULL Manteiga:5 Café:1 Pão:4 Leite:1 Leite:3 Café:1 Café:1 Café:1 Figura 6 - Árvore gerada na e última Iteração / Fonte: o autor. Descrição da Imagem: a figura contém a representação gráfica de uma árvore com nove primeiro que é nó raiz, não contém nenhuma informação e está conectado a dois outros nós, sendo que nó à esquerda contém a informação e o nó à direita contém a informação: 0 nó com a informação: 'Mantei- ga:5', por sua vez, está ligado a dois outros nós, sendo o nó a sua esquerda contendo a informação: 'Pão:4' e nó a sua direita contendo a informação: 0 nó que contém a informação por sua vez está ligado a dois outros nós, sendo que o nó à esquerda contém a informação: 'Leite:3' e o nó à direita contém a informação 0 nó que contém a informação 'Leite:3', por sua vez, está ligado a um outro nó que contém a 'Café:1' Finalmente, nó que contém a informação 'Leite:1' está ligado a um outro nó que contém a informação Os nós estão dispostos verticalmente, com linhas conectando-os na ordem mencionada. Fim da descrição. 8 3TEMA DE APRENDIZAGEM 4 2. Extração dos padrões frequentes: uma vez construída a FP-Tree, é pos- sível extrair os padrões frequentes de forma eficiente. Isso é feito através de uma busca recursiva na árvore, onde cada caminho da raiz até um nó folha representa um padrão frequente. Vamos construir os conjuntos intermediários conditional pattern base e con- ditional FP tree, para depois gerar os conjuntos frequentes. A partir da árvore gerada vamos montar uma tabela com os padrões condicionais a partir de cada item considerando a frequência inversa. Frequência inversa Conditional pattern Café {Manteiga,Pão,Leite :1}, {Manteiga, Leite : 1}, {Manteiga, Pão 1} Leite {Manteiga,Pão :3}, {Manteiga :1} Pão {Manteiga 4} Manteiga Tabela 5 Conditional Pattern base / Fonte: o autor. Para achar o conditional pattern base precisamos iterar sobre cada item da coluna de frequência inversa, e guardar o caminho da raiz até o nó em questão. Exem- plo: podemos encontrar um nó Café, pelos caminhos: { Manteiga, Pão, Leite }, {Manteiga, Leite}, {Manteiga, Pão}. Observe na Árvore 6 que o caminho direto da raiz ao Café não é contado. A partir do conditional pattern base, criamos o conditional FP tree que são os itens dos conjuntos de conditional pattern base que estão acima do suporte mínimo. Conditional pattern base Conditional FP-tree {Manteiga,Pão,Leite :1}, {Manteiga, Leite 1}, {Manteiga, Pão [Manteiga 3] {Manteiga,Pão :3}, {Manteiga :1} [Manteiga 4], [Pão 3] 8 4UNIASSELVI {Manteiga 4} [Manteiga 4] Tabela 6 - Conditional FP-tree / Fonte: o autor. Agora, finalmente podemos encontrar nossos conjuntos frequentes. Frequência inversa Conditional FP-tree Conjuntos frequentes Café [Manteiga 3] {Manteiga, Café} {Manteiga, Leite}, {Pão, Leite}, {Man- Leite [Manteiga : 4, Pão : 3] teiga, Pão, Leite} Pão [Manteiga 4] {Manteiga, Pão} Manteiga - - Tabela 7 - Padrões frequentes (FP) / Fonte: o autor. 3. Geração das regras de associação: Com os padrões frequentes identi- ficados, o algoritmo pode gerar as regras de associação entre os itens. Isso envolve a combinação dos padrões frequentes e a aplicação de métricas de interesse, como suporte e confiança. Dessa maneira, fazendo todas as combinações dos conjuntos frequentes geradados, teremos as seguintes regras com seus respectivos fatores de confiança e suporte: {Manteiga, Manteiga X Café (suporte = 3/6 ; confiança = 3/5 Café X Manteiga (suporte = 3/6 ; confiança = 3/4) {Manteiga, Leite}: Manteiga X Leite (suporte = 4/6 ; confiança = 4/5 ) Leite X Manteiga (suporte = 4/6 ; confiança = 4/4) {Pão, Leite}: Pão X Leite (suporte = 3/6 ; confiança = 3/4) Leite X Pão (suporte = 3/6 ; confiança = 3/4) {Manteiga, Pão, Leite}: Manteiga X Pão, Leite (suporte = 3/6 = 3/5 ) 8TEMA DE APRENDIZAGEM 4 Pão X Manteiga, Leite confiança = 3/4) Leite X Manteiga, Pão (suporte = 3/6 ; confiança = 3/4) {Manteiga,Pão}: Manteiga X Pão (suporte = = 4/6 ; confiança = 4/5 ) Pão X Manteiga (suporte = 4/6 ; confiança = 4/4) Implementação em Python O FP-Growth é implementado de forma eficiente em Python, graças às bibliotecas e ferramentas disponíveis na linguagem. Uma das implementações mais popu- lares é fornecida pela biblioteca `mlxtend`, que oferece uma interface simples e intuitiva para execução do algoritmo. Abaixo, apresentamos um exemplo básico de implementação do FP-Growth em Python utilizando a biblioteca `mlxtend`: !pip -qq install mlxtend import mlxtend from mlxtend.frequent_patterns import fpgrowth from mlxtend.preprocessing import TransactionEncoder import pandas as pd # Dados de exemplo dataset = 'B', 'B', 'C', # Codificação das transações te = TransactionEncoder te ary = te.fit (dataset) transform (dataset) # Criação do DataFrame df = pd.DataFrame (te_ary, columns=te.columns_) # Aplicação do algoritmo FP-Growth frequentitemsets = fpgrowth (df, use colnames=- True) # Resultados print A saída final do algoritmo é exibida a seguir. Note que foi utilizado um fator de suporte = 50%. 8UNIASSELVI support itemsets 0 0.75 (B) 1 0.75 (A) 2 0.50 3 0.75 (E) 4 0.75 (D) 5 0.50 (D, B) 6 0.50 (B, E) 7 0.50 (D, B, E) 8 0.50 (A, B) 9 0.50 (D, A) 10 0.50 (A, E) 11 0.50 (D, A, E) 12 0.50 (A, C) 13 0.75 (D, E) Figura 7 - Tela de resultado final do FP-Growth / Fonte: o autor. Descrição da Imagem: a tela de saída do algoritmo exibe os valores de suporte de cada itemset, iniciando com itemset formado do item 'B' com um fator de suporte de 0.75, e assim por diante até o itemset formado pelos itens D e D com fator de suporte de 0.75. Fim da descrição. Nesse exemplo, estamos utilizando o FP-Growth para encontrar conjuntos de itens frequentes em um conjunto de transações. A função `fpgrowth` recebe como entrada um DataFrame binário de transações e um valor mínimo de su- porte, retornando os conjuntos de itens frequentes. Note que essa função já realiza toda a construção da árvore FP-Growth e identifica todos os itemsets possíveis com seus respectivos fatores de suporte. Representações de Dados O algoritmo FP-Growth utiliza representações de dados específicas para ar- mazenar as informações necessárias para a geração dos padrões frequentes. A principal representação é a FP-Tree, que consiste em uma estrutura de árvore compacta e eficiente. Além disso, o algoritmo também pode fazer uso de outras estruturas de dados, como tabelas hash, para otimizar o processo de busca e geração dos padrões frequentes. 8 7TEMA DE APRENDIZAGEM 4 Limitações do FP-Growth Embora o FP-Growth seja um algoritmo eficiente e escalável para a mineração de padrões frequentes, ele também possui algumas limitações. Uma das princi- pais limitações está relacionada ao uso de memória, especialmente ao lidar com conjuntos de dados muito grandes. Além disso, o desempenho do algoritmo pode ser afetado por diferentes parâmetros, como o suporte mínimo, e pela natureza dos dados, especialmente quando há muitos itens únicos ou transações esparsas. Áreas de Aplicação O algoritmo FP-Growth tem uma ampla gama de aplicações em diversas áreas, incluindo: ANÁLISE DE CESTAS DE MERCADO: identificação de padrões de compra em transações de supermercado para estratégias de marketing e merchandising. SEGMENTAÇÃO DE CLIENTES: agrupamento de clientes com base em padrões de compra para personalização de ofertas e campanhas de marketing. DETECÇÃO DE FRAUDES: identificação de padrões suspeitos em transações financeiras para detecção de ativi- dades fraudulentas. ANÁLISE DE CLIQUES EM WEBSITES: identificação de padrões de navegação em websites para recomendação de conteú- do e otimização de layout. 8UNIASSELVI BIOINFORMÁTICA: análise de padrões genéticos em sequências de DNA para identificação de mutações e associações genéticas. Comparação entre APriori e FP-Growth Oalgoritmo Apriori e o algoritmo FP-Growth são duas abordagens populares para a mineração de padrões frequentes em conjuntos de dados transacionais. Ambos os algoritmos têm vantagens e desvantagens, e a escolha entre eles depende das características específicas dos dados e dos requisitos de desempenho. No Quadro 1, a seguir, há uma breve comparação entre esses dois algorit- mos, destacando as situações em que cada um deles tem uma melhor perfor- mance. Acompanhe. ALGORITMO APRIORI ALGORITMO FP-GROWTH Supera Apriori em É menos eficiente em conjuntos de dados conjuntos de dados com esparsos, pois utiliza muitos itens únicos e DESEMPENHO EM uma estrutura de dados transações esparsas, pois CONJUNTOS DE DADOS compacta (FP-Tree) requer várias passa- ESPARSOS que permite uma única gens pelos dados para passagem pelos dados, construir candidatos resultando em uma me- frequentes. lhor performance. Pode consumir mais Tende a consumir menos especialmente pois utiliza em conjuntos de dados a estrutura de árvore CONSUMO DE MEMÓRIA grandes, devido à ne- compacta (FP-Tree) para cessidade de armazenar representar os padrões tabelas de candidatos frequentes de forma frequentes e contadores eficiente. de suporte. 8 9TEMA DE APRENDIZAGEM 4 Em conjuntos de dados Pode ser excessivamente pequenos, onde nú- complexo para conjuntos mero de itens únicos e de dados pequenos, pois DESEMPENHO EM transações é limitado, a construção da FP-Tree CONJUNTOS DE DADOS Apriori pode ter um de- pode introduzir overhead PEQUENOS sempenho competitivo adicional em compara- devido à simplicidade de ção com abordagens sua abordagem. mais diretas. Pode exigir ajustes mais Pode ser mais fácil de cuidadosos devido à ajustar em termos de pa- sensibilidade de seus râmetros, como suporte parâmetros, como AJUSTE DE PARÂMETROS mínimo e confiança tamanho mínimo do mínima, pois suas etapas padrão frequentemente são mais diretas e usado para podar a árvo- intuitivas. re e controlar tamanho do espaço de busca. Quadro 1 Comparação entre o algoritmo Apriori e o algoritmo / Fonte: o autor. resumo, o algoritmo Apriori pode ser mais adequado para conjuntos de dados peque- nos ou densos, enquanto o FP-Growth é geralmente preferido em conjuntos de dados grandes e esparsos. No entanto, a escolha entre os dois algoritmos depende das caracte- rísticas específicas dos dados e dos requisitos de desempenho do problema em questão. INDICAÇÃO DE FILME Filme: Uma mente brilhante 4 MELHOR FILME Sinopse: John Nash (Russell Crowe) é um gênio da matemá- tica que, aos 21 anos, formulou um teorema que provou sua genialidade e tornou aclamado no meio onde atuava. Após anos de luta para se recuperar de uma doença, ele consegue retornar à sociedade e acaba sendo premiado com Nobel. BRILHANTE Comentário: matemático John Nash formulou a Teoria dos Jogos, que é estudo das tomadas de decisões que um indivi- duo realiza quando resultado desta escolha depende do que outros indivíduos decidem, como em um jogo de estratégias. Assim como Nash identificou padrões e estratégias ótimas em jogos, FP-Growth identifica padrões de comportamento de compra que podem ser úteis para empresas no desenvolvi- mento de estratégias de vendas e marketing. 9 0UNIASSELVI EM FOCO Confira aqui uma aula referente a este assunto. Recursos de mídia disponíveis no conteúdo digital do ambiente virtual de aprendizagem. NOVOS DESAFIOS A implementação do algoritmo FP-Growth para tarefas de Regras de Associação não só é fundamentada em sólidos princípios teóricos, mas também tem uma apli- cação direta e significativa no mercado de trabalho. Vamos explorar como a teoria e a prática se conectam, destacando suas perspectivas no ambiente profissional: 1. Teoria Fundamentada em Mineração de Dados O algoritmo FP-Growth baseia-se em conceitos fundamentais da mineração de dados, como suporte, confiança e lift, que são essenciais para identificar padrões relevantes em grandes conjuntos de dados transacionais. Os profissionais que dominam esses conceitos teóricos têm uma base sólida para entender como o FP-Growth funciona e como aplicá-lo na prática 2. Implementação em Ambientes Profissionais No mercado de trabalho, a capacidade de implementar o algoritmo FP-Growth é altamente valorizada em várias áreas, incluindo varejo, marketing, finanças e saúde. Empresas de varejo, por exemplo, utilizam o FP-Growth para analisar pa- drões de compra dos clientes e oferecer recomendações personalizadas, enquanto instituições financeiras o utilizam para detectar fraudes em transações. 3. Análise de Dados e Tomada de Decisão A capacidade de utilizar o FP-Growth para identificar padrões e tendências nos dados é essencial para a tomada de decisão baseada em dados no ambiente pro- fissional. Profissionais que dominam o FP-Growth são capazes de extrair insights valiosos dos dados e usar essas informações para orientar estratégias de negócios e melhorar o desempenho organizacional.TEMA DE APRENDIZAGEM 4 4. Adaptação a Diferentes Setores e Problemas Uma das vantagens do FP-Growth é sua aplicabilidade em uma variedade de setores e problemas. Os alunos que dominam o algoritmo FP-Growth têm a capacidade de adaptá-lo a diferentes contextos e problemas específicos de cada setor, o que os torna altamente versáteis e procurados pelos empregadores. 5. Aprendizado Contínuo e Inovação Além de dominar a implementação do FP-Growth, os profissionais também devem estar abertos ao aprendizado contínuo e à inovação. O campo da mineração de dados está em constante evolução, e novas técnicas e algoritmos estão sendo desen- volvidos regularmente. Os profissionais que se mantêm atualizados com as últimas tendências e tecnologias têm uma vantagem competitiva no mercado de trabalho. Em suma, a conexão entre teoria e prática na implementação do algoritmo FP-Growth para tarefas de Regras de Associação é fundamental para o sucesso no mercado de Os alunos que compreendem os princípios teóricos sub- jacentes, dominam a implementação prática e estão preparados para aplicar seus conhecimentos em diferentes setores e problemas têm excelentes perspectivas pro- fissionais e contribuem significativamente para o sucesso de suas organizações. 24,000 20,000 18,000 4,000