RBM Flashcards
O que é uma rede Restricted Boltzman Machine (RBM)? Por que ela tem o nome restrita?
Uma RBM é uma rede neural não supervisionada. É um modelo gráfico baseado em energia.
Ela é uma rede shallow composta de duas camadas chamadas visible (x) and hidden (h).
No passo forward são calculados os valores das varíaveis lantentes. E no passo backward são calculados as as reconstruções da entrada x.
Possui a mesma matrix de pesos W no passo forward e backward mudando apenas o bias.
As conexões são bidirecionais. Por ser restrista não existem conexões em uma mesma camada.
Quais as diferenças entre (V)AE e RBM?
- As conexões na (V)AE são unidirecionais e RBM são bidirecionais.
- RBM é um modelo de apenas duas camadas. A (V)AE deve ter no mínimo quatro camadas. Sendo encoder e decoder um modelo shallow.
- Em uma rede RBM a matriz de pesos W é a mesma no forward e backward mudando apenas o bias. No (V)AE as matrizes de pesos e bias são diferentes no encoder e decoder.
- O RBM é um modelo probabilístico baseado em energia. (V)AE é um modelo determinístico formado arquiteturas comuns da literutura com MLP, LSTM ou CNN.
- O treinamento da (V)AE busca minimizar o erro de reconstrução dos dados de entrada. Em uma RBM o treinamento tem objetivo de descobrir como esses dois conjuntos de variáveis estão conectados um ao outro.
Quais as semelhanças entre (V)AE e RBM?
- ambas são modelos de aprendizagem não-supervisionada.
- ambas codificam as entradas em um código (varíaveis latentes) que são reconstruidas na saída.
- ambas tem em geral a dimensão da camada latente menor que a entrada.
- ambos treinamentos utilizam gradiente descendente estátistico.
Explique os passos envolvidos no treinamento de um RBM.
- Amostragem de Gibbs:
Produz-se N cadeias de markov independentes nos dados e retira-se iterativamente amostras h e x. - Constrastive Divergence
Nesse passo ocorre a atualização da matriz de pesos.
delta_W = vo x P(ho|vo) - vk x P(hk|vk)
W_new = W_old + delta_W