Uma máquina de Boltzmann restrita (RBM) é uma rede neural artificial estocástica generativa que pode aprender uma distribuição de probabilidade sobre seu conjunto de entradas. É uma variante da máquina de Boltzmann, com a restrição de que seus neurônios formam um grafo bipartido: conexões existem apenas entre dois grupos de unidades, comumente chamados de unidades visíveis e ocultas, e não há conexões dentro de cada grupo. Essa restrição permite algoritmos de treinamento mais eficientes do que os disponíveis para máquinas de Boltzmann gerais, particularmente o algoritmo de divergência contrastiva baseado em gradiente.
RBMs foram inicialmente propostas sob o nome Harmonium por Paul Smolensky em 1986, e ganharam destaque depois que Geoffrey Hinton e colaboradores desenvolveram algoritmos de aprendizado rápido para elas em meados dos anos 2000. Elas encontraram aplicações em redução de dimensionalidade, classificação, filtragem colaborativa, aprendizado de características, modelagem de tópicos, imunologia e mecânica quântica de muitos corpos. RBMs podem ser treinadas de maneiras supervisionadas ou não supervisionadas, dependendo da tarefa, e são um componente-chave em redes de aprendizado profundo, onde redes de crença profundas podem ser formadas empilhando RBMs e, opcionalmente, ajustando finamente a rede resultante com descida de gradiente e retropropagação.
Estrutura
O tipo padrão de RBM tem unidades ocultas e visíveis binárias (booleanas). Consiste em uma matriz de pesos \(W\) de tamanho \(m \times n\), onde cada elemento de peso \(w_{i,j}\) está associado à conexão entre a unidade visível \(v_i\) e a unidade oculta \(h_j\). Além disso, há pesos de viés \(a_i\) para unidades visíveis e \(b_j\) para unidades ocultas. A energia de uma configuração (par de vetores booleanos) \((v, h)\) é definida como:
\[ E(v, h) = -\sum_i a_i v_i - \sum_j b_j h_j - \sum_i \sum_j v_i w_{i,j} h_j \]
ou em notação matricial:
\[ E(v, h) = -a^{\mathrm{T}} v - b^{\mathrm{T}} h - v^{\mathrm{T}} W h. \]
Esta função de energia é análoga à de uma rede de Hopfield. Como com máquinas de Boltzmann gerais, a distribuição de probabilidade conjunta para os vetores visíveis e ocultos é definida em termos da função de energia:
\[ P(v, h) = \frac{1}{Z} e^{-E(v,h)} \]
onde \(Z\) é uma função de partição, uma constante de normalização que garante que as probabilidades somem a 1. A probabilidade marginal de um vetor visível é a soma de \(P(v,h)\) sobre todas as configurações possíveis da camada oculta, e vice-versa.
##Treinamento e Divergência Contrastiva
Como a estrutura de grafo subjacente de uma RBM é bipartida, as ativações das unidades ocultas são mutuamente independentes dadas as ativações das unidades visíveis, e, inversamente, as ativações das unidades visíveis são mutuamente independentes dadas as ativações das unidades ocultas. Essa propriedade simplifica o cálculo das probabilidades condicionais, permitindo treinamento eficiente. O algoritmo de treinamento mais comum é a divergência contrastiva, que aproxima o gradiente da log-verossimilhança realizando uma curta execução de cadeia de Markov Monte Carlo, tipicamente com um passo de amostragem de Gibbs. Essa abordagem evita o cálculo intratável da função de partição \(Z\), que soma sobre todas as configurações possíveis.
RBMs podem ser treinadas em modos supervisionados e não supervisionados. No aprendizado não supervisionado, o modelo aprende a representar a distribuição dos dados de entrada, frequentemente para extração de características ou redução de dimensionalidade. Em tarefas supervisionadas, a RBM pode ser adaptada para prever rótulos incorporando-os na camada visível ou usando uma camada de saída separada.
##Aplicações em Aprendizado Profundo
Máquinas de Boltzmann restritas são um componente fundamental no aprendizado profundo. Uma rede de crença profunda pode ser formada empilhando múltiplas RBMs, onde a camada oculta de uma RBM serve como a camada visível para a próxima. Esse pré-treinamento por camadas permite que a rede aprenda características hierárquicas dos dados. Após o pré-treinamento, toda a rede pode ser ajustada finamente usando descida de gradiente e retropropagação, uma técnica que foi influente no desenvolvimento de arquiteturas modernas de aprendizado profundo.
RBMs foram aplicadas à filtragem colaborativa, onde modelam interações usuário-item para sistemas de recomendação, e à modelagem de tópicos, onde aprendem tópicos latentes de corpora de texto. Em imunologia, elas foram usadas para modelar respostas do sistema imunológico, e em mecânica quântica, foram empregadas para representar estados quânticos de muitos corpos.
##Relação com Outros Modelos
RBMs estão intimamente relacionadas a outros modelos de redes neurais. Elas são um caso especial de máquinas de Boltzmann, que permitem conexões entre unidades ocultas, mas a restrição bipartida torna o treinamento mais tratável. Elas também compartilham semelhanças com redes de Hopfield em sua função de energia, mas RBMs são generativas e estocásticas, enquanto redes de Hopfield são tipicamente determinísticas e usadas para memória associativa. No contexto mais amplo de Machine learning, RBMs são consideradas um tipo de modelo generativo, distinto de modelos discriminativos como redes neurais padrão de alimentação direta.
##Legado e Influência
O desenvolvimento de RBMs contribuiu significativamente para o ressurgimento do Deep learning em meados dos anos 2000. Geoffrey Hinton, que mais tarde se tornou uma figura proeminente em Artificial intelligence, usou RBMs para demonstrar que redes profundas poderiam ser treinadas efetivamente, superando dificuldades anteriores com métodos baseados em gradiente. Esse trabalho influenciou arquiteturas subsequentes, incluindo transformadores e grandes modelos de linguagem, embora esses modelos usem paradigmas de treinamento diferentes. RBMs permanecem um modelo teórico importante no estudo de Generative AI e ainda são usadas em aplicações especializadas onde sua natureza probabilística é vantajosa.
##Ver Também