Discussão do artigo "Funcionalidades do assistente MQL5 que você precisa conhecer (Parte 10): RBM não convencional"

 

Novo artigo Funcionalidades do assistente MQL5 que você precisa conhecer (Parte 10): RBM não convencional foi publicado:

As máquinas de Boltzmann restritas (Restrictive Boltzmann Machines, RBM) são, em um nível básico, uma rede neural de duas camadas capaz de realizar classificação não supervisionada através da redução de dimensionalidade. Vamos usar seus princípios básicos e ver o que acontece se a desenharmos e a treinarmos de forma não convencional. Será que conseguiremos obter um filtro de sinais útil?

As máquinas de Boltzmann restritas (RBM) são uma forma de rede neural que, apesar de sua estrutura simples, são bastante populares por suas capacidades de descobrir propriedades e funções ocultas em conjuntos de dados. A rede neural aprende os pesos em uma dimensão menor a partir dos dados de entrada de maior dimensão. Esses pesos são frequentemente chamados de distribuições de probabilidade. Como sempre, mais informações podem ser encontradas aqui, mas a estrutura da rede pode ser ilustrada na imagem abaixo:

Normalmente, as RBM são compostas por duas camadas (eu digo "normalmente" porque há algumas redes que as integram em transformadores), especificamente uma camada visível e uma camada oculta, sendo que a camada visível é maior (tem mais neurônios) do que a camada oculta. Cada neurônio na camada visível é conectado a cada neurônio na camada oculta durante a chamada fase positiva. Durante esta fase, como é típico para a maioria das redes neurais, os valores de entrada na camada visível são multiplicados pelos valores dos pesos nas conexões dos neurônios, e a soma desses produtos é adicionada ao viés para determinar os valores dos neurônios ocultos correspondentes. A seguir vem a fase negativa. Através de várias conexões neuronais, ela restaura os dados de entrada ao estado original, começando pelos valores calculados na camada oculta. 

Assim, nos primeiros ciclos, como esperado, os dados de entrada restaurados não corresponderão aos dados de entrada iniciais, já que muitas vezes a RBM é inicializada com pesos aleatórios. Isso significa que os pesos precisam ser ajustados para aproximar os dados de saída restaurados aos de entrada. Esta é uma fase adicional que seguirá cada ciclo. O resultado final e o objetivo desta fase positiva do ciclo, seguida pela fase negativa e ajuste de pesos, é obter os pesos que conectam os neurônios e que, quando aplicados aos dados de entrada, podem nos dar valores "intuitivos" dos neurônios na camada oculta. Esses valores dos neurônios na camada oculta representam o que é chamado de distribuição de probabilidades dos dados de entrada sobre os neurônios ocultos.

Autor: Stephen Njuki