Glossário IA
O dicionário completo da Inteligência Artificial
Fatoração de Matrizes Distribuída
Conjunto de técnicas algorítmicas que visam decompor uma matriz de tamanho muito grande em produtos de matrizes menores, distribuindo os cálculos e os dados por um cluster de máquinas para superar as limitações de memória e poder de computação de um único nó.
Alternating Least Squares (ALS) Distribuído
Algoritmo de fatoração de matrizes paralelizado que resolve o problema de mínimos quadrados alternadamente para um dos fatores da matriz enquanto mantém o outro fixo, adaptando-se naturalmente a ambientes distribuídos como o Spark MLlib graças à independência dos cálculos em cada linha ou coluna.
Stochastic Gradient Descent (SGD) Distribuído
Variante paralela do gradiente descendente estocástico onde a atualização dos parâmetros da fatoração é realizada de forma assíncrona ou sincronizada em múltiplas partições de dados, exigindo mecanismos de gerenciamento de consistência para convergir corretamente em um contexto distribuído.
MapReduce para Fatoração
Paradigma de programação que decompõe os algoritmos de fatoração de matrizes em duas etapas principais: uma etapa 'Map' para cálculos locais em fragmentos de dados e uma etapa 'Reduce' para agregar os resultados parciais e atualizar os fatores da matriz, utilizado notavelmente em implementações no Hadoop.
Spark MLlib ALS
Implementação otimizada e distribuída do algoritmo Alternating Least Squares dentro da biblioteca Machine Learning do Spark, projetada para fatoração de matrizes de grande escala, explorando o modelo de programação RDD ou DataFrame para máxima eficiência em dados iterativos.
Particionamento de Matriz (Matrix Partitioning)
Estratégia de divisão de uma matriz massiva em sub-blocos (por linhas, por colunas ou por blocos quadrados) distribuídos nos nós de um cluster, uma escolha crucial que impacta diretamente a carga de trabalho, a comunicação inter-nós e o desempenho global dos algoritmos de fatoração.
Modelo de Consistência (Consistency Model)
Regras que definem a visibilidade das atualizações dos fatores da matriz através dos nós do cluster, oscilando entre uma forte coerência (modelo BSP - Bulk Synchronous Parallel) que garante a convergência ao custo da latência, e uma fraca coerência (modelo assíncrono) que acelera as iterações mas pode comprometer a estabilidade.
Fatoração de Matriz Online (Online Matrix Factorization)
Abordagem distribuída adaptada a fluxos de dados contínuos, onde o modelo de fatoração é atualizado incrementalmente com a chegada de novas observações sem a necessidade de um retreinamento completo do histórico, frequentemente implementada com variantes distribuídas de SGD.
Fatoração de Matrizes Distribuída Paramétrica
Método avançado onde os fatores da matriz não são aprendidos diretamente, mas são gerados por funções paramétricas (ex: redes neurais) compartilhadas e distribuídas, reduzindo assim a quantidade de dados a serem comunicados entre os nós e melhorando a capacidade de generalização.
Stragglers (Nós Lentos)
Fenômeno em sistemas distribuídos onde algumas máquinas executam suas tarefas de cálculo muito mais lentamente que as outras, atrasando todo o processo de fatoração síncrona; técnicas como especulação ou algoritmos tolerantes a atrasos são projetadas para mitigar seu impacto.
Fatoração de Matrizes Não-Negativas (NMF) Distribuída
Extensão distribuída da fatoração em matrizes não-negativas, onde as restrições de não-negatividade nos fatores são impostas através de regras de atualização (multiplicativas ou de projeção) adaptadas para uma execução paralela, frequentemente utilizada para agrupamento de textos em larga escala.
Checkpointing em Algoritmos Iterativos
Técnica de salvamento periódico do estado dos fatores de matriz em um armazenamento confiável (ex: HDFS) ao longo das iterações de um algoritmo distribuído, permitindo retomar o cálculo de um ponto intermediário em caso de falha de um nó e evitar reiniciar tudo desde o início.
Fatoração de Tensores Distribuída
Generalização da fatoração de matrizes para tensores (arrays multi-dimensionais) em um contexto distribuído, utilizada para modelar dados com mais de dois modos (ex: usuários, itens, tempo) e que requer algoritmos paralelos específicos como o PARAFAC ou o Tucker distribuído.
Função de Perda Distribuída
Cálculo do erro de reconstrução da matriz fatorada, realizado de maneira particionada onde cada nó avalia a perda em seu subconjunto de dados antes que uma etapa de redução global calcule a perda total para guiar as atualizações do modelo de maneira centralizada ou descentralizada.
Regularização Distribuída
Aplicação de penalidades (como a norma L2) nos fatores da matriz para prevenir o sobreajuste (overfitting), onde o termo de regularização é calculado localmente em cada nó e agregado durante a atualização global dos parâmetros, garantindo uma regularização consistente em escala de cluster.
Spark GraphX para Fatoração
Utilização da API de processamento de grafos do Spark, GraphX, para modelar a matriz como um grafo bipartido (usuários-itens) e executar algoritmos de fatoração baseados na propagação de mensagens (message passing) entre os nós do grafo, oferecendo uma alternativa às implementações baseadas em DataFrames.