A Estrutura de Aprendizagem Estruturada Neural

O Neural Structured Learning (NSL) se concentra no treinamento de redes neurais profundas, aproveitando sinais estruturados (quando disponíveis) junto com entradas de recursos. Conforme apresentado por Bui et al. (WSDM'18) , esses sinais estruturados são usados ​​para regularizar o treinamento de uma rede neural, forçando o modelo a aprender previsões precisas (minimizando a perda supervisionada), enquanto ao mesmo tempo mantém a similaridade estrutural de entrada (minimizando a perda vizinha , veja a figura abaixo). Esta técnica é genérica e pode ser aplicada em arquiteturas neurais arbitrárias (como NNs feed-forward, NNs convolucionais e NNs recorrentes).

NSL Concept

Observe que a equação generalizada de perdas vizinhas é flexível e pode ter outras formas além da ilustrada acima. Por exemplo, também podemos selecionar

$$\sum_{x_j \in \mathcal{N}(x_i)}\mathcal{E}(y_i,g_\theta(x_j))$$

ser a perda do vizinho, que calcula a distância entre a verdade fundamental

$$y_i$$

e a previsão do vizinho

$$g_\theta(x_j)$$

. Isso é comumente usado na aprendizagem adversarial (Goodfellow et al., ICLR'15) . Portanto, NSL generaliza para o aprendizado de grafos neurais se os vizinhos forem explicitamente representados por um gráfico, e para o aprendizado adversarial se os vizinhos forem implicitamente induzidos pela perturbação do adversário.

O fluxo de trabalho geral para Aprendizagem Estruturada Neural é ilustrado abaixo. As setas pretas representam o fluxo de trabalho de treinamento convencional e as setas vermelhas representam o novo fluxo de trabalho introduzido pela NSL para alavancar sinais estruturados. Primeiro, as amostras de treinamento são aumentadas para incluir sinais estruturados. Quando os sinais estruturados não são fornecidos explicitamente, eles podem ser construídos ou induzidos (o último se aplica ao aprendizado adversário). Em seguida, as amostras de treinamento aumentadas (incluindo as amostras originais e seus vizinhos correspondentes) são fornecidas à rede neural para calcular seus embeddings. A distância entre a incorporação de uma amostra e a incorporação de seu vizinho é calculada e usada como a perda do vizinho, que é tratada como um termo de regularização e adicionada à perda final. Para a regularização baseada em vizinho explícito, normalmente calculamos a perda de vizinho como a distância entre a incorporação da amostra e a incorporação do vizinho. No entanto, qualquer camada da rede neural pode ser usada para calcular a perda de vizinho. Por outro lado, para regularização baseada em vizinho induzida (adversarial), calculamos a perda de vizinho como a distância entre a previsão de saída do vizinho adversário induzido e o rótulo de verdade fundamental.

Fluxo de trabalho NSL

Por que usar NSL?

NSL traz as seguintes vantagens:

  • Maior precisão : os sinais estruturados entre as amostras podem fornecer informações que nem sempre estão disponíveis nas entradas de recursos; portanto, a abordagem de treinamento conjunto (com sinais e recursos estruturados) mostrou superar muitos métodos existentes (que dependem de treinamento apenas com recursos) em uma ampla gama de tarefas, como classificação de documentos e classificação de intenção semântica ( Bui et al ., WSDM'18 & Kipf et al., ICLR'17 ).
  • Robustez : modelos treinados com exemplos adversários demonstraram ser robustos contra perturbações adversas projetadas para enganar a previsão ou classificação de um modelo ( Goodfellow et al., ICLR'15 & Miyato et al., ICLR'16 ). Quando o número de amostras de treinamento é pequeno, o treinamento com exemplos adversários também ajuda a melhorar a precisão do modelo ( Tsipras et al., ICLR'19 ).
  • São necessários menos dados rotulados : o NSL permite que as redes neurais aproveitem os dados rotulados e não rotulados, o que estende o paradigma de aprendizagem para aprendizagem semissupervisionada . Especificamente, o NSL permite que a rede treine usando dados rotulados como na configuração supervisionada e, ao mesmo tempo, leva a rede a aprender representações ocultas semelhantes para as "amostras vizinhas" que podem ou não ter rótulos. Esta técnica tem se mostrado uma grande promessa para melhorar a precisão do modelo quando a quantidade de dados rotulados é relativamente pequena ( Bui et al., WSDM'18 & Miyato et al., ICLR'16 ).

Tutoriais passo a passo

Para obter experiência prática com Aprendizagem Estruturada Neural, temos três tutoriais que cobrem vários cenários onde sinais estruturados podem ser explicitamente fornecidos, induzidos ou construídos: