Olá a todos. Hoje vou apresentar nosso trabalho de pesquisa Learning to Reason Deductively: Math Word Problem Solving as Complex Relation Extraction.
Sou Allan, do ByteDance AI Lab, e este é um trabalho conjunto com Jierui Li, da Universidade do Texas em Austin, e Wei Lu, da SUTD.
Primeiro, gostaria de falar sobre a nossa motivação para o raciocínio.
Então, aqui mostramos exemplos em que o raciocínio em várias etapas é útil.
Portanto, esse valor é retirado do artigo do PaLM, onde eles realizam solicitações para resolver o problema da rede no cenário de aprendizado de poucos disparos.
Então, no lado esquerdo, podemos ver se dermos alguns exemplos apenas com perguntas e respostas, talvez não consigamos obter as respostas corretas.
Mas se dermos mais uma descrição do raciocínio, o modelo é capaz de prever a descrição do raciocínio e também fazer uma previsão correta aqui.
Portanto, é bom ter o raciocínio interpretável em várias etapas como saída.
E também achamos que o problema da palavra matemática é uma aplicação direta para avaliar tais habilidades de raciocínio.
Então, aqui na nossa configuração do problema, dadas as perguntas que precisamos para resolver essa questão e obter as respostas numéricas.
Assim, em nossos conjuntos de dados, também recebemos a expressão matemática que leva ao ah para essa resposta em particular também.
Assim, certas suposições ah também se aplicam como no trabalho anterior.
Assumimos que a precisão das quantidades é conhecida.
E consideramos apenas operadores básicos como adição, subtrações, multiplicação, divisão e exponencial.
Além disso, operadores complicados podem ser realmente decompostos nesses operadores básicos.
Assim, o trabalho anterior em matemática resolução de problemas de palavras ah na verdade pode ah ser categorizado em seqüência para seqüência e seqüência para modelo de árvore.
Assim, a sequência tradicional para o modelo de sequência converte a expressão em uma sequência específica para geração.
E é muito fácil de implementar e pode generalizar para muitos problemas complicados diferentes.
Mas as desvantagens são que o desempenho geralmente não é melhor do que o modelo estruturado e sua falta de interpretabilidade para a previsão.
Mas, na verdade, essa direção ainda é bastante popular por causa do modelo de transformador.
Então, em modelos baseados em árvores, nós realmente estruturamos essas expressões na forma de árvore e seguimos uma travessia pré-ordenada em gerações de árvores.
Então aqui a gente continua gerando os operadores até a gente chegar nas folhas, que são as quantidades.
Então, aqui a coisa boa é que ele realmente nos dá essa estrutura de árvore binária, e é um, mas na verdade é bastante contra-intuitivo porque geramos o operador primeiro e depois no final geramos as quantidades.
E a segunda coisa é que ele também contém alguns cálculos repetitivos.
Então, aqui, se olharmos para esta expressão, oito vezes três mais três é realmente gerado duas vezes, mas na verdade devemos reutilizar os resultados.
Assim, em nossa abordagem proposta, queremos resolver esses problemas passo a passo e de maneiras interpretáveis.
Então, por exemplo, aqui na segunda etapa, ah podemos obter esses divisores que é vinte e sete.
E também podemos nos referir às perguntas originais para encontrar os conteúdos relevantes.
E nestes passos obtemos os divisores.
Então, ah e então neste terceiro passo nós realmente obtemos o quociente.
E depois destes três passos, podemos reutilizar os resultados do segundo passo, e depois obter os resultados do quarto passo, e finalmente podemos obter os dividendos.
Então, aqui nós realmente geramos toda a expressão diretamente em vez de gerar um único operador ou quantidades.
Isso torna o processo mais preciso.
Então, em nosso sistema dedutivo, primeiro começamos com um monte de quantidades apresentadas nas perguntas e também incluindo alguma constante como nosso estado inicial ah estado inicial.
Assim, a expressão é representada por e i j o p.
Onde realizamos o operador de q_i a q_j, e tal expressão é realmente direcionada.
Então, nós também temos subtração com palavras aqui para representar a direção oposta.
Isso é bastante semelhante à extração de relações.
Assim, em um sistema dedutivo formal, em um passo de tempo t, aplicamos o operador entre o par q_i e q_j, e então obtemos essa nova expressão.
Nós o adicionamos ao próximo estado para se tornar uma nova quantidade.
Então, esses slides realmente visualizam a evolução do estado em que continuamos adicionando expressão ao estado atual.
Então, em nossas implementações de modelo, primeiro usamos um modelo de linguagem pré-treinado que pode ser BERTs ou Robertas e depois codificamos a frase e depois obtemos essas representações de quantidade.
Então, uma vez que obtemos as representações de quantidade, podemos começar a fazer inferência.
Aqui mostramos um exemplo de q_1 para obter a representação para q_2 dividido por q_2 e depois vezes q_3.
Primeiro obtemos a representação do par ah, que é basicamente apenas a concatenação entre q_1 e q_2, e então aplicamos uma rede feedforward que é parametrizada pelo operador.
E então, finalmente, obtemos a expressão representação q_1 dividida por q_2.
Mas, na prática, na fase de inferência, podemos ser capazes de obter a expressão incorreta também.
Então, aqui toda a expressão possível é igual a três vezes o número de operadores.
Então, o bom aqui é que podemos facilmente adicionar restrições para controlar essa pesquisa neste espaço de pesquisa.
Por exemplo, se essa expressão não for permitida, podemos simplesmente remover essa expressão em nosso espaço de pesquisa.
Então, na segunda etapa, fazemos a mesma coisa, mas a única diferença é que a única diferença é mais uma quantidade.
Portanto, essa quantidade vem da expressão calculada anterior.
Então, finalmente, podemos obter esta expressão final q_3 vezes q_4.
E também podemos ver que o número de todas as possíveis expressões ah é diferente da etapa anterior.
Então, ah tal diferença torna difícil aplicar a pesquisa de feixe porque a distribuição de probabilidade entre essas duas etapas é desequilibrada.
Portanto, o procedimento de treinamento é semelhante ao treinamento de uma sequência para o modelo de sequência, onde otimizamos a perda em cada etapa de tempo.
E aqui também usamos essa tau para representar quando devemos encerrar esse processo de geração.
E aqui o espaço é diferente de sequência para sequência porque o espaço é diferente em cada passo de tempo, enquanto na sequência tradicional para o modelo de sequência este é o número de vocabulário.
E também nos permite impor certas restrições de conhecimento prévio.
Assim, realizamos experimentos nos conjuntos de dados de problemas de palavras matemáticas comumente usados, MAWPS, Math23K,  MathQA e SVAMP.
E aqui mostramos brevemente os resultados em comparação com as melhores abordagens anteriores.
Portanto, nossa variante com melhor desempenho é Roberta-DeductiveReasoner.
E, na verdade, não usamos pesquisa de feixe, em contraste, todas as abordagens anteriores estão usando pesquisa de feixe.
Então, as melhores abordagens são muitas vezes modelo baseado em árvore.
Portanto, em geral, nosso raciocinador é capaz de superar significativamente esse modelo baseado em árvore.
Mas podemos ver que os números absolutos no MathQA ou SVAMP não são realmente altos.
Por isso, investigamos ainda mais os resultados do SVAMP.
E esse conjunto de dados é desafiador porque o autor tentou adicionar manualmente algo para confundir o modelo de PNL, como adicionar informações irrelevantes e quantidades extras.
Então, em nossa previsão, descobrimos que alguns dos valores intermediários são realmente negativos.
Por exemplo, nestas perguntas estamos a perguntar quantas maçãs o Jake tem?
Mas temos algumas informações extras, como dezessete fotos a menos, e Steven tem oito fotos, o que é totalmente irrelevante.
Então, nosso modelo faz alguma previsão como esta que está produzindo valores negativos.
E observamos que essas duas expressões realmente têm pontuações semelhantes.
Então, podemos realmente limitar esse espaço de pesquisa removendo os resultados que são negativos para que possamos fazer com que o ah faça a resposta correta.
Então, descobrimos ainda que essa restrição realmente melhora muito para alguns modelos.
Por exemplo, para o BERT, melhoramos sete pontos e, em seguida, para o modelo base de Roberta, na verdade melhoramos dois pontos.
Portanto, um melhor modelo de linguagem tem melhores habilidades de compreensão da linguagem, de modo que o número aqui é maior para Roberta e menor para BERT.
E também tentamos analisar a dificuldade por trás de todos esses conjuntos de dados.
Assumimos que o número de quantidades não utilizadas pode ser considerado como informação irrelevante aqui.
Então ah aqui podemos ver que ah,temos a porcentagem de amostras com quantidades não utilizadas, e o conjunto de dados SVAMP tem a maior porção.
E aqui também mostramos o desempenho geral.
Para essas amostras sem quantidades não utilizadas, portanto, o desempenho geral é realmente maior do que o desempenho geral.
Mas com essas amostras que com quantidade não utilizada é realmente muito pior do que o, pior do que o desempenho geral.
Para MAWPS, não temos realmente muitos casos de teste, então eu simplesmente ignoro essa parte.
Então, finalmente, queremos mostrar a interpretabilidade através de um exemplo de perturbação de pergunta.
Então, aqui o nosso modelo realmente faz uma previsão errada no primeiro passo.
Então, a gente pode realmente correlacionar essa expressão com a frase aqui. Beleza.
Então, achamos que essa frase pode estar enganando o modelo para previsões incorretas.
Então aqui plantar mais trinta e cinco faz o modelo fazer o modelo pensar que deveria ser um operador de adição.
Então tentamos rever a frase para ser algo como o número de pereiras são trinta e cinco menos do que as macieiras.
Então, fazemos isso para transmitir uma semântica mais precisa, de modo que o modelo seja capaz de fazer a previsão correta.
Assim, este estudo mostra como as previsões interpretáveis nos ajudam a entender o comportamento do modelo.
Então, para concluir nosso trabalho, primeiro nosso modelo é realmente bastante eficiente.
E somos capazes de fornecer um procedimento de resolução interpretável.
E podemos facilmente incorporar algum conhecimento prévio como restrição que pode ajudar a melhorar o desempenho.
E a última coisa é que o mecanismo subjacente não se aplica apenas a tarefas de resolução de problemas de rede, mas também a outras tarefas que envolvem raciocínio em várias etapas.
Também temos certas limitações.
Ah, se tivermos um grande número de operadores ou constantes, o consumo de memória pode ser bastante alto.
E a segunda coisa é que, como mencionado, porque a distribuição de probabilidade é desequilibrada entre diferentes etapas de tempo, por isso também é bastante desafiador aplicar a estratégia de pesquisa de feixe.
Então, este é o fim da palestra, e as perguntas são bem-vindas. Obrigado.
Olá, meu nome é Antoine e sou da Universidade de Maastricht.
Vou apresentar meu trabalho conjunto com Jerry, que é sobre um Novo Conjunto de Dados para Recuperação de Artigos Estatutários.
Questões legais são parte integrante da vida de muitas pessoas.
Mas a maioria dos cidadãos tem pouco conhecimento sobre seus direitos e processos legais fundamentais.
Como resultado, muitos cidadãos vulneráveis que não podem pagar a assistência dispendiosa de um especialista jurídico são deixados desprotegidos ou, pior, explorados.
Todo o trabalho visa colmatar a lacuna entre as pessoas e a lei através do desenvolvimento de um sistema de recuperação eficaz para artigos estatutários.
Tal sistema poderia fornecer um serviço de assistência jurídica profissional gratuito para seres humanos não qualificados.
Antes de mergulhar na principal contribuição deste trabalho, vamos primeiro descrever o problema da recuperação de artigos estatutários.
Dada uma pergunta simples sobre uma questão legal como, o que eu arrisco se eu violar a confidencialidade profissional?
É necessário um modelo para recuperar todos os artigos estatutários relevantes de um grande corpo de legislação.
Esta tarefa de recuperação de informações vem com seu próprio conjunto de desafios.
Primeiro, ele lida com dois tipos de linguagem.
Linguagem natural comum para as questões e linguagem jurídica complexa para os estatutos.
Essa diferença nas distribuições linguísticas torna mais difícil para um sistema recuperar candidatos relevantes, pois indiretamente requer um sistema de interpretação inerente que possa traduzir uma questão natural para uma questão jurídica que corresponda à terminologia dos estatutos.
Além disso, a lei estatutária não é uma pilha de artigos independentes que podem ser tratados como uma fonte completa de informações por conta própria, ao contrário de notícias ou receitas, por exemplo.
Em vez disso, é uma coleção estruturada de disposições legais que têm todo um significado apenas quando consideradas no contexto geral, ou seja, juntamente com as informações suplementares dos artigos vizinhos, os campos e subcampos aos quais pertencem e seu lugar na estrutura da lei.
Por fim, os artigos estatutários não são pequenos parágrafos que geralmente são a unidade de recuperação típica na maioria dos trabalhos de recuperação.
Aqui, há documentos longos que podem ter até seis mil palavras.
Os recentes avanços na PNL despertaram um enorme interesse em muitas tarefas legais, como previsão de julgamento legal ou revisão automatizada de contratos de contato.
Mas a recuperação de artigos estatutários permaneceu praticamente intocada devido à falta de conjuntos de dados grandes e de alta qualidade.
Neste trabalho, apresentamos um novo conjunto de dados centrado no cidadão nativo francês para estudar se os modelos de recuperação podem aproximar a eficiência e a confiabilidade de um especialista jurídico para a tarefa de recuperação de artigos estatutários.
Nosso conjunto de dados de recuperação de artigos estatutários belgas BSARD consiste em mais de mil e cem questões legais colocadas por cidadãos belgas.
Essas perguntas abrangem uma ampla gama de tópicos, desde família, moradia, dinheiro, trabalho e previdência social.
Cada um deles foi rotulado por juristas experientes com referências a artigos relevantes de um corpus de mais de vinte e dois mil e seiscentos artigos jurídicos de códigos de direito belgas.
Vamos agora falar sobre como recolhemos este conjunto de dados.
Primeiro, começamos por compilar um grande corpus de artigos jurídicos.
Consideramos trinta e dois códigos belgas disponíveis ao público e extraímos todos os artigos, bem como os títulos das seções correspondentes.
Em seguida, reunimos questões jurídicas com referências a estatutos relevantes.
Para isso, fazemos parceria com o escritório de advocacia belga que recebe todos os anos cerca de quatro mil e-mails de cidadãos belgas que pedem conselhos sobre uma questão jurídica pessoal.
Tivemos a sorte de ter acesso aos seus sites, onde a sua equipa de juristas experientes aborda as questões jurídicas mais comuns dos belgas.
Coletamos milhares de perguntas anotadas com categorias, subcategorias e referências legais a estatutos relevantes.
Por fim, passamos as referências legais e filtramos as questões cujas referências não eram artigos em um dos códigos de direito que consideramos.
As referências restantes foram combinadas e convertidas para os ids de artigo correspondentes do nosso corpus.
Acabamos com mil cento e oito perguntas, cada uma cuidadosamente rotulada com os ids dos artigos relevantes de nosso grande corpus de vinte e dois mil e seiscentos e trinta e três artigos estatutários.
Além disso, cada questão vem com a categoria principal e uma concatenação de subcategorias.
E cada artigo vem com uma concatenação do título de subsequência na estrutura da lei.
Esta informação extra não é usada no presente trabalho, mas pode ser de interesse para pesquisas futuras sobre recuperação de informações legais ou classificação de texto legal.
Vejamos algumas características do nosso conjunto de dados.
As perguntas têm entre cinco e quarenta e quatro palavras, com uma mediana de quatorze palavras.
Os artigos são muito mais longos, com um comprimento médio de setenta e sete palavras, com cento e quarenta e dois deles excedendo mil palavras.
O mais longo sendo até cinco mil setecentas e noventa palavras.
Como mencionado anteriormente, as perguntas abrangem uma ampla gama de tópicos, com cerca de oitenta e cinco por cento deles sendo sobre família, moradia, dinheiro ou justiça.
Enquanto os restantes quinze por cento dizem respeito à segurança social, aos estrangeiros ou ao trabalho.
O artigo também é muito diversificado, pois eles vêm de trinta e dois códigos belgas diferentes que cobrem um grande número de tópicos legais.
Aqui está o número total de artigos coletados de cada um desses códigos belgas.
Dos vinte e dois mil seiscentos e trinta e três artigos, apenas mil seiscentos e doze são referidos como relevantes para pelo menos uma pergunta no conjunto de dados.
E cerca de oitenta por cento desses artigos citados vêm do código civil, códigos judiciais, códigos de investigação criminal ou códigos penais.
Enquanto isso, dezoito dos trinta e dois códigos têm menos de cinco artigos mencionados como relevantes para pelo menos uma pergunta.
O que pode ser explicado pelo fato de que esses códigos se concentraram menos em indivíduos e suas preocupações.
No geral, o número médio de citações para esses artigos citados é de dois, e menos de vinte e cinco por cento deles são citados mais de cinco vezes.
Usando todos os conjuntos de dados, comparamos várias abordagens de recuperação, incluindo arquitetura lexical e densa.
Dada uma consulta e um artigo, um modelo lexical atribui uma pontuação ao par de artigos de consulta calculando a soma sobre os termos de consulta dos pesos de cada um desses termos nesse artigo.
Experimentamos com as funções de classificação padrão TF-IDF e BM25.
O principal problema com essas abordagens é que elas só podem recuperar artigos que contenham palavras-chave presentes na consulta.
Para superar essa limitação, experimentamos uma arquitetura de base neural que pode capturar relações semânticas entre consultas e artigo.
Usamos um modelo bi-codificador que mapeia consultas e artigos em representações vetoriais densas e calcula uma pontuação de relevância entre um par de artigos de consulta pela semelhança de suas incorporações.
Essas incorporações normalmente resultam de uma operação de agrupamento na saída de um modelo de incorporação de palavras.
Primeiro, estudamos a eficácia dos bi-codificadores siameses em uma configuração de avaliação de tiro zero, o que significa que os modelos de incorporação de palavras pré-treinados são aplicados fora da caixa sem qualquer ajuste fino adicional.
Experimentamos com codificador de texto independente de contexto, ou seja, word2vec e fastText, e modelos de incorporação dependentes de contexto, ou seja, Roberta e mais especificamente CamemBERT, que é um modelo francês de Roberta.
Além disso, treinamos nossos próprios bi-codificadores baseados em CamemBERT em nosso conjunto de dados.
Observe que, para o treinamento, experimentamos os dois sabores da arquitetura bi-codificadora.
Siamês, que usa um modelo exclusivo de incorporação de palavras que mapeia a consulta e o artigo juntos em um espaço vetorial denso compartilhado, e duas torres, que usa dois modelos independentes de incorporação de palavras que codificam a consulta e o artigo separadamente em diferentes espaços de incorporação.
Nós experimentamos com média, max e CLS pooling, bem como produto e cosseno para computar semelhanças.
Aqui está o resultado da nossa linha de base nos conjuntos de teste.
Com os métodos lexicais acima, os bi-codificadores siameses avaliaram em uma configuração de tiro zero no meio e os bi-codificadores afinados abaixo.
No geral, o bi-codificador ajustado supera significativamente todas as outras linhas de base.
O modelo de duas torres melhora em relação às suas variantes siamesas no recall em cem, mas tem um desempenho semelhante nas outras métricas.
Embora o BM25 tenha apresentado um desempenho inferior ao do bi-codificador treinado significativamente, seu desempenho indicou que ainda é uma linha de base forte para a recuperação específica do domínio.
Em relação à avaliação de tiro zero do bi-codificador siamês, descobrimos que usar diretamente as incorporações de um modelo CamemBERT pré-treinado sem otimizar para a tarefa de recuperação de informações dá resultados ruins, o que é consistente com achados anteriores.
Além disso, observamos que o bi-codificador baseado em word2vec superou significativamente os modelos baseados em fastText e BERT, sugerindo que talvez as incorporações de nível de palavra pré-treinadas sejam mais apropriadas para a tarefa do que as incorporações de nível de caractere ou nível de subpalavra quando usadas fora da caixa.
Embora promissores, esses resultados sugerem ampla oportunidade de melhoria em comparação com um especialista jurídico qualificado que pode eventualmente recuperar todos os artigos relevantes para qualquer pergunta e, assim, obter pontuações perfeitas.
Vamos concluir discutindo duas limitações do nosso conjunto de dados.
Em primeiro lugar, o corpus do artigo limita-se aos recolhidos a partir dos trinta e dois códigos belgas considerados, o que não abrange toda a lei belga, uma vez que faltam artigos de decretos, directivas e portarias.
Durante a construção do conjunto de dados, todas as referências a esses artigos não coletados são ignoradas, o que faz com que algumas perguntas acabem com apenas uma fração do número inicial de artigos relevantes.
Esta informação implica, portanto, que a resposta contida nos artigos relevantes restantes pode estar incompleta, embora ainda seja completamente apropriada.
Em segundo lugar, devemos notar que nem todas as questões jurídicas podem ser respondidas apenas com estatutos.
Por exemplo, a pergunta: posso despejar meus inquilinos se eles fizerem muito barulho?
Pode não ter uma resposta detalhada dentro da lei estatutária que quantifique um limite de ruído específico no qual o despejo é permitido.
Em vez disso, o proprietário provavelmente deve confiar mais na jurisprudência e encontrar precedentes semelhantes à sua situação atual.
Por exemplo, os inquilinos fazem duas festas por semana até as duas da manhã.
Portanto, algumas questões são mais adequadas do que outras para a tarefa de recuperação de artigos estatutários, e o domínio das menos adequadas continua a ser determinado.
Esperamos que nosso trabalho desperte interesse no desenvolvimento de modelos de recuperação de artigos estatutários práticos e confiáveis.
Isso pode ajudar a melhorar o acesso à justiça para todos.
Pode consultar o nosso papel, conjunto de dados e código nos seguintes links. Obrigado.
Olá, temos o prazer de apresentar nosso trabalho no VALSE; um benchmark independente de tarefas destinado a testar modelos de visão e linguagem com fenômenos linguísticos específicos.
Por que nos esforçamos para estabelecer esse benchmark?
Bem, durante os últimos anos, vimos uma explosão de modelos de visão e linguagem baseados em transformadores pré-treinados em grandes quantidades de pares de texto de imagem.
Cada um desses modelos impulsiona o estado da arte em tarefas de visão e linguagem, como resposta visual a perguntas, raciocínio visual de senso comum, recuperação de imagens, aterramento de frases.
Então, recebemos uma mensagem, as precisões nessas tarefas e benchmarks específicos estão aumentando de forma constante.
Mas será que sabemos o que os modelos realmente aprenderam?
O que é que um transformador de visão e linguagem entendeu ao atribuir uma pontuação alta para esta imagem e esta frase para combinar?
E a pontuação baixa para este?
Os modelos de visão e linguagem se concentram na coisa certa?
Ou eles se concentram em vieses como mostrado em trabalhos anteriores?
Para lançar mais luz sobre este aspecto, propomos uma direção mais tarefa agnóstica e introduzir VALSE que testa a sensibilidade da visão e modelos de linguagem para fenômenos linguísticos específicos que afetam tanto as modalidades linguísticas e visuais.
Visamos a existência, a pluralidade, a contagem, as relações espaciais, as ações e a referência central da entidade.
Mas como testamos se a visão e os modelos de linguagem capturaram esse fenômeno?
Ao frustrar um método anteriormente aplicado para modelos de visão e linguagem apenas para frases nominais de Ravi Shekhar e colaboradores, e contando conosco em trabalhos anteriores.
Foiling basicamente significa que pegamos a legenda de uma imagem e produzimos uma folha alterando a legenda de modo que ela não descreva mais a imagem.
E fazemos essas alterações de frase concentrando-nos em seis peças específicas, como existência, pluralidade, contagem, relações espaciais, ações e referência de entidade, onde cada peça pode consistir em um ou mais instrumentos, caso encontremos mais de uma maneira interessante de criar instâncias de folha.
Por exemplo, no caso da peça de ações, temos dois instrumentos, um em que o verbo de ação é alterado com uma ação diferente e outro em que os actantes são trocados.
Contagem e coreferência também são peças que possuem mais de um instrumento.
E criamos essas folhas certificando-nos de que elas não descrevem a imagem, que são frases gramaticais e válidas.
Isso não é fácil de fazer porque uma legenda frustrada pode ser menos provável do que a legenda original.
Por exemplo, embora não seja impossível, é estatisticamente menos provável que as plantas cortem um homem do que um homem corte plantas, e grandes modelos de visão e linguagem podem captar isso.
Portanto, para obter folhas válidas, devemos agir.
Primeiro, fazemos uso de modelos de linguagem fortes para propor folhas.
Em segundo lugar, usamos inferência de linguagem natural ou NLI curto para filtrar folhas que ainda podem estar descrevendo a imagem, uma vez que ao construir folhas precisamos garantir que elas não descrevam a imagem.
Para testar isso automaticamente, aplicamos a inferência de linguagem natural com a seguinte lógica.
Consideramos uma imagem como a premissa e sua legenda como sua hipótese implicada.
Além disso, consideramos a legenda como a premissa, e a folha é sua hipótese.
Se um modelo NLI prevê que a folha contradiga ou seja neutra em relação à legenda, tomamos isso como um indicador de uma folha válida.
Se um NLI prevê que a folha seja implicada pela legenda, não pode ser uma boa folha, uma vez que por transitividade dará uma descrição verdadeira da imagem, e filtramos essas folhas.
Mas este procedimento não é perfeito, é apenas um indicador para folhas válidas.
Portanto, como uma terceira medida para gerar folhas válidas, empregamos anotadores humanos para validar os dados usados no VALSE.
Assim, após a filtragem e avaliação humana, temos tantas instâncias de teste como descrito nesta tabela.
Observe que a VALSE não fornece dados de treinamento, mas apenas dados de teste.
Uma vez que é apenas um benchmark de teste de tiro zero, ele é projetado para alavancar as capacidades existentes de modelos de visão e linguagem após o pré-treinamento.
O ajuste fino só permitiria que os modelos explorassem artefatos ou vieses estatísticos nos dados.
E todos nós sabemos que esses modelos gostam de enganar e tomar atalhos.
E, como dissemos, estamos interessados em avaliar quais capacidades os modelos de visão e linguagem têm após o pré-treinamento.
Experimentamos cinco modelos de visão e linguagem em VALSE, nomeadamente com CLIP, LXMert, ViLBERT, ViLBERT doze em um e VisualBERT.
Duas de nossas métricas de avaliação mais importantes são a precisão dos modelos na classificação de pares de frases de imagem em legendas e folhas.
Talvez mais relevante para este vídeo, mostraremos nossa métrica mais permissiva, a precisão em pares, que mede se a pontuação de alinhamento de sentença de imagem é maior para o par de texto de imagem correto do que para seu par frustrado.
Para obter mais métricas e resultados sobre eles, confira nosso artigo.
Os resultados com precisão em pares são mostrados aqui e são consistentes com os resultados que obtivemos das outras métricas é que o melhor desempenho de tiro zero é alcançado pelo ViLBERT doze em um, seguido pelo ViLBERT, LXMert, CLIP e, finalmente, VisualBERT.
É notável como instrumentos centrados em objetos individuais como existência e frases nominais são quase resolvidos pelo ViLBERT doze em um, destacando que os modelos são capazes de identificar objetos nomeados e sua presença em imagens.
No entanto, nenhuma das peças restantes pode ser resolvida de forma confiável em nossas configurações adversárias.
Vemos a partir da pluralidade e dos instrumentos de contagem que os modelos de visão e linguagem têm dificuldade em distinguir referências a objetos únicos versus múltiplos, ou contá-los em uma imagem.
A peça de relação mostra que eles têm dificuldades em classificar corretamente uma relação espacial nomeada entre objetos em uma imagem.
Eles também têm dificuldade em distinguir ações e identificar seus participantes, mesmo que apoiados por vieses de plausibilidade, como vemos na peça de ações.
A partir da peça de coreferência, descobrimos que traçar várias referências ao mesmo objeto em uma imagem usando pronomes também é difícil para modelos de visão e linguagem.
Como uma verificação de sanidade, e porque é um experimento interessante, também comparamos dois modelos apenas de texto, GPT um e GPT dois, para avaliar se VALSE é solucionável por esses modelos unimodais calculando a perplexidade da legenda correta e frustrada, sem imagem aqui, e prevendo a entrada com a menor perplexidade.
Se a perplexidade é maior para a folha, tomamos isso como uma indicação de que a legenda frustrada pode sofrer de viés de plausibilidade ou outros vieses linguísticos.
E é interessante ver que, em alguns casos, os modelos de texto apenas GPT capturaram a plausibilidade do mundo melhor do que os modelos de visão e linguagem.
Então, para resumir, VALSE é uma referência que usa a lente de construções linguísticas para ajudar a comunidade a melhorar a visão e os modelos de linguagem, testando duramente suas capacidades de aterramento visual.
Nossos experimentos mostram que os modelos de visão e linguagem identificam bem os objetos nomeados e sua presença nas imagens, como mostra a peça existência, mas lutam para fundamentar sua interdependência e relações em cenas visuais quando forçados a respeitar indicadores linguísticos.
Gostaríamos muito de encorajar a comunidade a usar o VALSE para medir o progresso em direção à fundamentação da linguagem com modelos de visão e linguagem.
E ainda mais, o VALSE poderia ser usado como uma avaliação indireta de conjuntos de dados, pois os modelos poderiam ser avaliados antes e depois do treinamento ou ajuste fino para ver se um conjunto de dados ajuda os modelos a melhorar em qualquer um dos aspectos testados pelo VALSE.
Se estiver interessado, consulte os dados da VALSE no GitHub e, se tiver alguma dúvida, não hesite em contactar-nos.
Olá, meu nome é Kamezawa da Universidade de Tóquio.
Vou apresentar um artigo intitulado RNSum: A Large-Scale Dataset for Automatic Release Note Generation via Commit Logs Summarization.
Vou explicar nesta ordem.
Primeiro, apresentarei a geração automática de notas de lançamento em que estamos trabalhando nesta pesquisa.
Uma nota de lançamento é um documento técnico que resume as alterações distribuídas com cada lançamento de um produto de software.
A imagem mostra uma nota de lançamento para a versão dois vírgula seis vírgula quatro da biblioteca vuejs.
As notas de versão desempenham um papel importante no desenvolvimento de código aberto, mas consomem tempo para serem preparadas manualmente.
Portanto, seria muito útil ser capaz de gerar automaticamente notas de lançamento de alta qualidade.
Vou adiar para duas pesquisas anteriores sobre a geração automática de notas de lançamento.
O primeiro é um sistema chamado ARENA lançado em vinte e quatro.
É preciso uma abordagem baseada em regras, por exemplo, usando o extrator de alterações para extrair todas as diferenças, alterações de biblioteca e alterações de documentos das diferenças entre versões e, finalmente, combiná-las.
A característica mais notável deste sistema é o extrator de emissão no canto superior direito.
O que deve ser deixado para o JIRA, o sistema de rastreamento de problemas, e só pode ser aplicado a projetos que usam o JIRA.
Em outras palavras, ele não pode ser usado para muitos projetos no GitHub.
O segundo é Glifo, anunciado recentemente em vinte e vinte.
Ele está disponível na internet e pode ser instalado via pip.
Este sistema tem um modelo simples de classificação de texto baseado em aprendizado e produz um dos cinco rótulos, como recursos ou correções de bugs para cada mensagem de confirmação de entrada.
Esta imagem é um exemplo de uso que retorna um rótulo corretivo ou de correções de bugs.
Os dados de treinamento de Glyph são bastante pequenos, cerca de cinco mil, e serão mostrados nos experimentos descritos abaixo.
O desempenho do modelo de classificação de texto não é alto.
Apresento duas pesquisas relacionadas, mas seus problemas são aplicabilidade limitada e recursos de dados escassos.
Nosso artigo resolve esses dois problemas e gera automaticamente notas de lançamento de alta qualidade.
Com um problema de aplicabilidade limitado, propomos um método de sumarização de classe de alta qualidade usando apenas mensagens de commit como entrada.
Este método proposto pode ser usado para todos os repositórios em inglês.
Para o segundo problema de recursos de dados escassos, construímos nosso conjunto de dados RNSum, composto por cerca de oitenta e dois mil dados, coletando dados de repositórios públicos do GitHub usando a API do GitHub.
A seguir, descreverei nosso conjunto de dados.
Aqui está um exemplo de dados.
O lado esquerdo é uma mensagem de confirmação e o lado direito são as notas de lançamento.
As notas de lançamento são rotuladas como melhorias ou correções, etc.
Configuramos uma tarefa que toma as mensagens do commit como entrada e gera uma nota de lançamento rotulada.
Isso pode ser considerado como uma tarefa de sumarização.
Temos quatro rótulos predefinidos: recursos, melhorias, correções de bugs, remoções de deprecações e alterações de interrupção.
Estes foram definidos com base em pesquisas anteriores e outros fatores.
A nota de lançamento no canto inferior direito é extraída da nota de lançamento no canto inferior esquerdo.
Neste momento, é necessário detectar os quatro rótulos que foram configurados com antecedência.
Mas os rótulos nem sempre são consistentes com cada repositório.
Por exemplo, o rótulo de melhorias inclui melhorias, aprimoramentos, otimizações e assim por diante.
Preparamos uma lista de vocabulário de cerca de trinta rótulos para cada uma dessas variações notacionais.
Isto é para detectar a classe release note, e recolhe o texto da versão que se segue como a frase release note para a classe.
Em seguida, uma mensagem de commit.
As mensagens de commit não estão vinculadas a cada lançamento.
Como mostrado na imagem abaixo, se o lançamento atual for a versão dois, ponto cinco a dezenove, precisamos identificar a versão anterior, ponto dois, ponto cinco a dezoito e obter uma diferença.
Isso é um pouco tedioso e não é suficiente apenas obter uma lista de lançamentos e olhar para o antes e depois.
Criamos uma regra de correspondência heurística para obter as versões anterior e seguinte.
Análise do conjunto de dados.
No final, foram coletados sete mil e duzentos repositórios e oitenta e dois mil dados.
Além disso, o número médio de tokens de notas de lançamento é sessenta e três, o que é bastante alto para uma tarefa de resumo.
Além disso, o número de tokens únicos é bastante grande em oito mil oitocentos e trinta mil.
Isso se deve ao grande número de nomes exclusivos de classes ou métodos encontrados no repositório.
Em seguida, explicarei o método proposto.
O modelo de sumarização extrativista e abstrativista classwise consiste em dois módulos neurais.
Um classificador usando BERT ou CodeBERT e um gerador usando BART.
Primeiro, o ceas usa um classificador para classificar cada mensagem de commit em cinco classes de notas de lançamento, que usam melhorias, correções de bugs, depreciações e outras.
As mensagens de commit classificadas como outras são descartadas.
Em seguida, o ceas aplica o gerador aos quatro documentos rotulados de forma independente e gera notas de lançamento para cada classe.
Nesta tarefa, as correspondências diretas entre mensagens de commit e notas de lançamento não são conhecidas.
Portanto, para treinar o classificador, é por isso que reatribuímos pesquisas a cada mensagem de commit de entrada usando os primeiros dez caracteres de cada mensagem de commit.
Modelamos a abordagem de sumarização abstrativa classwise por dois métodos diferentes.
O primeiro modelo, que chamamos de CAS-Single, consiste em uma única rede de seis a seis e gera um único texto de nota de lançamento que fornece uma concatenação de mensagens de confirmação de entrada.
Os textos de saída podem ser divididos em segmentos de classe com base em símbolos de ponto de extremidade específicos de classe especiais.
O segundo método, o método, que chamamos de CAS-Multi, consiste em quatro redes seq2seq diferentes, cada uma das quais corresponde a uma das classes de notas de lançamento fixas.
Ok, deixe-me explicar as experiências.
Cinco métodos foram comparados: ceas, CAS-Single, CAS-Multi, Clustering e estudo anterior, Glyph.
Em relação à avaliação, em alguns casos, as notas de versão são emitidas em várias frases.
Como é difícil calcular o número de frases como elas são, elas são combinadas com espaços e tratadas como uma frase longa.
O BLEU é penalizado quando o sistema emite uma frase curta.
Essa penalidade resulta em um valor de BLEU mais baixo nos resultados do experimento descritos a seguir.
Finalmente, também calculamos a especificidade porque ROUGE e BLEU não podem ser calculados se as notas de lançamento estiverem vazias.
Uma maior especificidade significa que o modelo produz corretamente um texto vazio nos casos em que as notas de versão assumem vazio.
Aqui estão os resultados.
Como o conjunto de dados contém endereços de e-mail, valores em hash, etc., também avaliamos o conjunto de dados limpo, o que os exclui.
O ceas e o CAS alcançaram pontuações ROUGE-L mais de dez pontos acima das linhas de base.
Em particular, no conjunto de testes limpos, a diferença de pontuação entre o método proposto e as linhas de base saltou para mais de vinte pontos.
Estes resultados indicam que ceas e CAS são significativamente afetados.
O ceas obteve uma pontuação ROUGE-L melhor do que o CAS, sugerindo que a combinação de um classificador e um gerador é eficaz no treinamento do classificador usando pseudo rótulos.
Alta cobertura do ceas pode ser alcançada provavelmente porque o classificador pode se concentrar na seleção de mensagens de commit relevantes para cada classe.
CAS-Multi tendeu a produzir maior ROUGE-L do que CAS-Single.
Sugerindo que também é eficaz desenvolver independentemente modelos de resumo abstrativos diferentes para cada classe de nota de lançamento.
Aqui está uma análise de erro.
Os métodos CAS tendem a produzir frases mais curtas do que frases de referência humanas.
Na figura à direita, a frase de referência tem três ou quatro frases, enquanto o CAS tem apenas uma.
A razão para a relutância deste modelo é que, nos dados de treinamento, apenas trinta e três por cento das frases estão presentes no rótulo de recursos e quarenta por cento no rótulo de melhorias.
Além disso, os métodos CAS não podem gerar notas de versão precisas sem informações adicionais.
O exemplo superior à direita é um exemplo de uma mensagem de commit muito confusa, e a frase completa não pode ser gerada sem referência ao progresso ou problema correspondente.
O exemplo abaixo mostra que as duas mensagens de commit na entrada estão relacionadas e devem ser combinadas em uma frase, mas não o fazem.
Por fim, uma conclusão.
Criamos um novo conjunto de dados para geração automática de notas de lançamento.
Também formulamos uma tarefa de inserir mensagens de commit e resumi-las para que seja aplicável a todos os projetos escritos em inglês.
Nossos experimentos mostram que o método proposto gera notas de liberação menos ruidosas em maior cobertura do que as linhas de base.
Consulte o nosso conjunto de dados no GitHub.
Obrigado.
Olá, o meu nome é Asaf Harari.
E apresentarei nosso artigo, Enriquecimento de Dados Tabulares de Poucas Imagens Usando Arquiteturas de Transformadores Ajustadas.
Os cientistas de dados analisam os dados e concentram-se principalmente na manipulação dos recursos existentes dos dados.
Mas, às vezes, esses recursos são limitados.
A geração de recursos usando outra fonte de dados pode adicionar informações substanciais.
Nosso objetivo de pesquisa é o enriquecimento automático de dados tabulares usando o texto livre de fontes externas.
Suponha que tenhamos um conjunto de dados tabular e uma base de conhecimento.
Precisamos de um processo automático que envolva vinculação de entidades e análise de texto para extrair novos recursos do texto livre da base de conhecimento.
Nosso framework FeSTE é exatamente esse processo automático.
Então, vamos ver um exemplo em um conjunto de dados alimentado no FeSTE.
Neste exemplo, o conjunto de dados é um conjunto de dados universitário.
Quando seu objetivo é classificar as universidades em universidades de baixo escalão e universidades de alto escalão.
Como base de conhecimento, usamos a Wikipédia.
A primeira fase do FeSTE é a vinculação de entidades.
Quando cada entidade, neste exemplo, o nome da universidade, está vinculado a uma entidade dentro da base de conhecimento.
E e o texto das entidades da base de conhecimento é extraído e adicionado ao conjunto de dados.
Neste exemplo, o texto é o resumo da página da Wikipédia.
Agora, precisamos gerar ou extrair recursos do texto recuperado.
Então, precisamos de ah recurso fase de extração ah que inclui análise de texto.
E esta é a principal novidade deste artigo e vou aprofundá-lo nos próximos slides.
Após a fase de extração de recursos, há uma fase de geração de recursos quando usamos os recursos extraídos para gerar um pequeno número de novos recursos.
Primeiro, gere recursos ah no número de classes do conjunto de dados original.
Neste exemplo, o conjunto de dados original tem duas classes.
Então, o FeSTE gera dois novos recursos.
Mas se o conjunto de dados tiver cinco classes, o FeSTE gera cinco novos recursos.
Cada característica representa a probabilidade para cada classe.
Para analisar o texto, usamos o estado-da-arte atual da análise de texto, que são modelos de linguagem baseados em transformadores como BERT, GPT,  XLNet e etc.
É, mas não é provável que possamos treinar modelos de linguagem usando os conjuntos de dados de entrada.
Portanto, uma abordagem ingênua será ah alvo tarefa finetuning.
Assim, na fase de extração de recursos, podemos baixar modelos de linguagem pré-treinados, ajustar o modelo de linguagem sobre o conjunto de dados de destino.
Neste exemplo para aperfeiçoar o modelo de linguagem, para classificar ah para classificar o texto em classes, abstrato em classes, baixo ou alto.
Receba a saída do modelo de linguagem, que é a probabilidade de cada classe e use como novos recursos.
O problema com essa abordagem é que os conjuntos de dados podem ter poucas entidades / textos distintos.
Em nosso experimento, quase metade dos conjuntos de dados contém menos de quatrocentas amostras e o menor conjunto de dados contém trinta e cinco amostras em its, em um conjunto de treinamento.
Então, para ajustar um modelo de linguagem ao longo de ah, esse conjunto de dados será ineficaz.
Mas podemos usar conhecimento prévio sobre conjuntos de dados pré-analisados.
Como o FeSTE é aplicado em um conjunto de dados múltiplo, podemos usar os conjuntos de dados n menos um para coletar informações sobre os conjuntos de dados n menos um e usar essas informações quando analisamos o n-ésimo conjunto de dados.
O que nós, o que sugerimos é adicionar, adicionar outra fase de ajuste fino.
Uma fase preliminar de ajuste fino multitarefa.
Quando você afina o modelo de linguagem sobre os conjuntos de dados n menos um.
E, em seguida, executamos outra fase de ajuste fino que é um ajuste fino de tarefa de destino, quando você multa quando ajustamos o modelo de linguagem sobre o enésimo conjunto de dados de destino.
O estado-da-arte em multitarefa ah multitarefa finetuning chamado MTDNN.
No MTDNN, o MTDNN mantém ah cabeças no número de tarefas no conjunto de treinamento.
Portanto, neste exemplo, há quatro tarefas no conjunto de treinamento, portanto, o MTDNN mantém quatro cabeças, como você pode ver na imagem.
E recolhe amostras de um lote aleatório do conjunto de treino.
E se o lote aleatório pertence a uma tarefa de classificação de frase única, por exemplo, ele executa caminhos para frente e para trás através do primeiro cabeçalho.
E se o lote aleatório pertence à tarefa de classificação em pares, ele executa o caminho para frente e para trás através do último cabeçalho.
Em nosso cenário, os conjuntos de dados tabulares variam no número de classes.
Portanto, há muitas tarefas.
MTDNN manteve o número de classes, cabeças, camadas de saída.
E o adicional, adicionalmente MTDNN precisa inicializar novos cabeçalhos para um novo conjunto de dados com uma nova tarefa.
Nossa abordagem, chamada de ajuste fino de reformulação de tarefas, é que, em nossa abordagem de ajuste fino de reformulação de tarefas, em vez de manter várias cabeças, reformulamos cada conjunto de dados em uma frase por problema de classificação, que são tarefas de duas classes.
Então vamos ver um exemplo.
Aqui está o nosso conjunto de dados de entrada que consiste em entidades, recursos, texto e classes.
E reformulamos a tarefa de classificar o texto em baixo ou alto para classificar o texto, o resumo e a classe em verdadeiro ou falso.
Ou, em outras palavras, treinamos o modelo de linguagem para classificar um resumo e a classe ah para abstrato e classe ah, se o resumo pertence à classe ou não.
Portanto, o vetor de rótulo neste caso permanece sempre ah, que consiste sempre em duas classes.
E este é o algoritmo ah para a nossa abordagem fina e reformulada de ajuste fino.
Então, vamos ver o quadro completo.
Conjunto de dados alimentado no FeSTE.
E então ah FeSTE executa a fase de vinculação da entidade.
Ele extrai o texto da base de conhecimento, que neste exemplo é o resumo da página da Wikipedia.
Em seguida, reformulou a tarefa em uma tarefa de classificação de frases em pares.
Aplicou o modelo de linguagem à nova tarefa e a probabilidade de saída para cada classe.
E agora que o modelo de linguagem já está ajustado sobre n menos um conjunto de dados usando um ajuste fino multitarefa preliminar.
Em seguida, usamos o vetor de saída do modelo de linguagem como um recurso recém-gerado no número de classes.
Para avaliar nossa estrutura, usamos dezessete conjuntos de dados de classificação tabular que variam em tamanho, recursos, equilíbrio, domínio e desempenho inicial.
Como base de conhecimento, utilizamos a Wikipédia.
Nós projetamos o nosso experimento como deixar uma avaliação ah onde treinamos FeSTe mais de dezesseis conjuntos de dados e aplicá-lo ao décimo sétimo conjunto de dados.
Também dividimos cada conjunto de dados em quatro dobras e aplicamos a validação cruzada de quatro dobras.
Em seguida, geramos os novos recursos e os avaliamos usando cinco classificadores de avaliação.
Usamos na nossa base de experimentos a arquitetura de base BERT.
Aqui estão os resultados das nossas experiências.
Você pode ver que comparamos nossa estrutura com o ajuste fino do conjunto de dados alvo, o ajuste fino da tarefa alvo e um ajuste fino preliminar do MTDNN.
E a nossa afinação reformulada alcança o melhor resultado, o melhor desempenho.
Enquanto o MTDNN alcançou uma melhoria de dois por cento em relação ao ajuste fino do conjunto de dados alvo.
A nossa abordagem alcançou uma melhoria de 6%.
Quando olhamos para o pequeno conjunto de dados ah, podemos ver que o desempenho do MTDNN diminui e a melhoria da preliminar, a fase preliminar de ajuste fino multitarefa diminui para um vírgula cinco por cento.
Mas nosso desempenho aumentou para onze por cento em comparação com o ajuste fino da tarefa alvo sozinho.
Para somar, o FeSTE permite o enriquecimento de poucos tiros a partir de trinta e cinco amostras em nossos experimentos.
Ele usa uma arquitetura para todas as tarefas e conjuntos de dados.
E ele mantém a cabeça de ah do modelo.
Mas acrescenta uma fase de reformulação.
Aumenta o conjunto de trens e precisa de um valor alvo com significado semântico para que possamos alimentá-lo no modelo de linguagem e usá-lo no problema de classificação de pares de frases.
Obrigado.
