Uma paleta facilita para os pintores organizarem e misturarem pinturas de cores diferentes à medida que criam arte na tela à sua frente. Ter uma ferramenta semelhante que permita à IA aprender em conjunto com diversas fontes de dados, como as de conversas, narrativas, imagens e conhecimentos, pode abrir portas para pesquisadores e cientistas desenvolverem sistemas de IA capazes de inteligência mais geral.
Uma paleta permite ao pintor organizar e misturar tintas de cores diferentes. A SpaceFusion procura ajudar os cientistas de IA a fazer coisas semelhantes para diferentes modelos treinados em diferentes conjuntos de dados. Atualmente, para os modelos de aprendizado profundo, os conjuntos de dados são geralmente representados por vetores em diferentes espaços latentes usando diferentes redes neurais. No artigo "
Otimizando conjuntamente a diversidade e a relevância na geração de resposta neural ", meus co-autores e eu propomos o SpaceFusion, um paradigma de aprendizado para alinhar esses diferentes espaços latentes - organize-os e misture-os suavemente como a tinta da paleta - para que a IA possa aproveitar os padrões e conhecimentos incorporados em cada um deles. Este trabalho, que apresentaremos na
Conferência Anual 2019 do Capítulo Norte-Americano da Associação para Linguística Computacional: Tecnologias da Linguagem Humana (NAACL-HLT) , faz parte do projeto
Conversação Orientada a
Dados , e sua implementação é disponível no
GitHub .
Capturando a cor da conversa humana
Como primeira tentativa, aplicamos essa técnica à IA conversacional neural. Em nossa configuração, espera-se que um modelo neural gere respostas relevantes e interessantes, considerando um histórico ou contexto de conversação. Embora tenham sido feitos avanços promissores nos modelos de conversação neural, esses modelos tendem a ser seguros, produzindo respostas genéricas e sem graça. Foram desenvolvidas abordagens para diversificar essas respostas e capturar melhor a cor da conversa humana, mas muitas vezes
há uma troca, com a relevância em declínio .
Figura 1: Como uma paleta, permite a fácil combinação de tintas, o SpaceFusion alinha ou mistura os espaços latentes aprendidos a partir de um modelo de sequência a sequência (S2S, pontos vermelhos) e um autoencodificador (AE, pontos azuis) para utilizar em conjunto os dois modelos com mais eficiência.O SpaceFusion resolve esse problema alinhando os espaços latentes aprendidos em dois modelos (Figura 1):
- um modelo de sequência a sequência (S2S), que visa produzir respostas relevantes, mas pode não ter diversidade; e
- um modelo de autoencoder (AE), capaz de representar diversas respostas, mas não captura sua relação com a conversa.
O modelo aprendido em conjunto pode utilizar os pontos fortes de ambos os modelos e organizar os pontos de dados de uma maneira mais estruturada.
Figura 2: O exemplo acima ilustra um contexto e suas múltiplas respostas no espaço latente induzido pelo SpaceFusion. A distância e a direção do vetor de resposta previsto, considerando o contexto, correspondem aproximadamente à relevância e à diversidade, respectivamente.Por exemplo, como ilustrado na Figura 2, em um contexto - neste caso, “Alguém quer iniciar este jogo?” - as respostas positivas “Eu adoraria jogar” e “Sim, eu faço” são organizadas ao longo do mesma direção. Os negativos - “não estou interessado no jogo” e “não, não estou” - são mapeados em uma linha em outra direção. A diversidade de respostas é alcançada explorando o espaço latente em diferentes direções. Além disso, a distância no espaço latente corresponde à relevância. As respostas mais distantes do contexto - "Sim, aceito" e "Não, não aceito" - são geralmente genéricas, enquanto as mais próximas são mais relevantes para o contexto específico: "Não estou interessado no jogo" e " Quando você vai? "
O SpaceFusion separa os critérios de relevância e diversidade e os representa em duas dimensões independentes - direção e distância - facilitando a otimização conjunta de ambos. Nossas experiências empíricas e avaliação humana mostraram que o SpaceFusion tem um desempenho melhor nesses dois critérios em comparação às linhas de base competitivas.
Aprendendo um espaço latente compartilhado
Então, como exatamente o SpaceFusion alinha diferentes espaços latentes?
A ideia é bastante intuitiva: para cada par de pontos de dois espaços latentes diferentes, primeiro minimizamos a distância no espaço latente compartilhado e, em seguida, incentivamos uma transição suave entre eles. Isso é feito adicionando dois novos termos de regularização - termo distância e termo suavidade - à função objetivo.
Tomando a conversa como exemplo, o termo distância mede a distância euclidiana entre um ponto do espaço latente S2S, que é mapeado a partir do contexto e representa a resposta prevista e os pontos do espaço latente AE, que correspondem às suas respostas de destino. Minimizar essa distância incentiva o modelo S2S a mapear o contexto para um ponto próximo e cercado por suas respostas no espaço latente compartilhado, conforme ilustrado na Figura 2.
O termo suavidade mede a probabilidade de gerar a resposta alvo a partir de uma interpolação aleatória entre o ponto mapeado a partir do contexto e o mapeado a partir da resposta. Ao maximizar essa probabilidade, incentivamos uma transição suave do significado das respostas geradas à medida que nos afastamos do contexto. Isso nos permite explorar a vizinhança do ponto de previsão feito pelo S2S e, assim, gerar respostas diversas que são relevantes para o contexto.
Com essas duas novas regularizações adicionadas na função objetivo, colocamos as restrições de distância e suavidade no aprendizado do espaço latente, para que o treinamento não se concentre apenas no desempenho de cada espaço latente, mas também tente alinhá-los, adicionando-os estruturas desejadas. Nosso trabalho se concentrou em modelos de conversação, mas esperamos que o SpaceFusion possa alinhar os espaços latentes aprendidos por outros modelos treinados em diferentes conjuntos de dados. Isso torna possível conectar diferentes habilidades e domínios de conhecimento aprendidos por cada sistema específico de IA e é um pequeno passo em direção a uma inteligência mais geral.