Re53:读论文 How Can We Know What Language Models Know?

诸神缄默不语-个人CSDN博文目录
诸神缄默不语的论文阅读笔记和分类

论文名称:How Can We Know What Language Models Know?

ArXiv网址:https://arxiv.org/abs/1911.12543

官方GitHub项目(prompt之类的都有):https://github.com/jzbjyb/LPAQA

本文是2020年TACL论文,作者来自卡耐基梅隆大学和博世北美研究所。

本文关注探索LM中蕴含的知识。以前已经有工作用完形填空的方式来探查知识(Obama is a __ by profession),但是这些填空模版(prompt)都是手工做的,因此可能是sub-optimal的(在上一篇论文最后也提及了),不能充分发挥LM的能力。
本文的解决方案是自动挖掘prompt(远程监督、回译、集成)

这篇工作的实验真的多,这也太能做了。

文章目录

  • 1. 探查知识的方案
  • 2. 实验
    • 1. 数据集
    • 2. LM
    • 3. baseline
    • 4. 实验设置
    • 5. 主实验结果
    • 6. 实验分析
      • Prediction Consistency by Prompt
      • POS-based Analysis
      • Cross-model Consistency
      • Linear vs. Log-linear Combination
    • 7. 失败trick集合

1. 探查知识的方案

Re53:读论文 How Can We Know What Language Models Know?_第1张图片

从数据库中获取知识是deterministic的,但从LM中获取知识(完形填空)是不可靠的。
本文用的都是双向LM,做填空题的那种。

  1. mining-based methods:远程监督:从维基百科中找三元组出现的句子。
    1. 方法一:Middle-word Prompts(subject prompt object)
    2. 方法二:Dependency-based Prompts(句法分析→subject和object之间的依存路径)
      Re53:读论文 How Can We Know What Language Models Know?_第2张图片
      (句法分析这块我也不懂总之大概是这么个意思吧)
  2. paraphrasing-based methods:对人工或挖掘得到的种子prompt进行回译
  3. 挑选和集成prompt
    1. Top-1 Prompt Selection:选择在训练集上准确率最高的prompt(这个准确率的公式定义比较复杂,但是反正就这个prompt对应的关系里object预测正确的占所有样本的比例)
    2. Rank-based Ensemble:top-K概率求和Re53:读论文 How Can We Know What Language Models Know?_第3张图片
    3. Optimized Ensemble:大意是说对每个关系的T个prompt分别训练权重
      Re53:读论文 How Can We Know What Language Models Know?_第4张图片
      在这里插入图片描述

这篇paper里面还提及了BERT跟LM的标准定义严格来说不一样这一茬:
Re53:读论文 How Can We Know What Language Models Know?_第5张图片
感觉现在已经没人在乎了=== 随便吧==

2. 实验

1. 数据集

Re53:读论文 How Can We Know What Language Models Know?_第6张图片

2. LM

BERT-base
BERT-large

增强了外部的实体表征:
ERNIE
Know-Bert

3. baseline

  1. Majority
  2. Man:手工prompt
  3. Mine
  4. Mine+Man
  5. Mine+Para
  6. Man+Para
  7. TopK:求平均
  8. Opti.:加权平均
  9. Oracle:所有prompt中有一个能预测正确,就算LM知道这个知识

4. 实验设置

mine 40个prompts
回译7个prompts

清洗噪音prompts

Adam
batch size: 32

5. 主实验结果

Re53:读论文 How Can We Know What Language Models Know?_第7张图片

Re53:读论文 How Can We Know What Language Models Know?_第8张图片

与手工prompt相比,效果得到了提升:
Re53:读论文 How Can We Know What Language Models Know?_第9张图片

集成权重:
Re53:读论文 How Can We Know What Language Models Know?_第10张图片

K的选择:
Re53:读论文 How Can We Know What Language Models Know?_第11张图片

prompt做轻微修改也能改变效果:
Re53:读论文 How Can We Know What Language Models Know?_第12张图片

两种远程监督方案的对比:
Re53:读论文 How Can We Know What Language Models Know?_第13张图片

不同LM的实验结果:
Re53:读论文 How Can We Know What Language Models Know?_第14张图片

在LAMA-HUN(一个比LAMA更难的benchmark)上的表现:
Re53:读论文 How Can We Know What Language Models Know?_第15张图片

在Google-RE上的表现:
Re53:读论文 How Can We Know What Language Models Know?_第16张图片

6. 实验分析

Prediction Consistency by Prompt

Re53:读论文 How Can We Know What Language Models Know?_第17张图片
divergence是两个prompt预测结果不同的程度:
在这里插入图片描述
皮尔森相关系数是0.25,说明编辑距离和divergence之间确实存在弱相关性(prompt差别越大,预测结果差别越大)

POS-based Analysis

Re53:读论文 How Can We Know What Language Models Know?_第18张图片

Re53:读论文 How Can We Know What Language Models Know?_第19张图片
用排名分布而不是准确率分布,在脚注解释了一下是因为不同关系的准确率的量级不同

Cross-model Consistency

检测prompts能不能跨模型通用

Re53:读论文 How Can We Know What Language Models Know?_第20张图片

Re53:读论文 How Can We Know What Language Models Know?_第21张图片

Linear vs. Log-linear Combination

求和的权重

Re53:读论文 How Can We Know What Language Models Know?_第22张图片

7. 失败trick集合

这块真实诚啊

  1. LM-aware Prompt Generation
    Re53:读论文 How Can We Know What Language Models Know?_第23张图片
  2. Forward and Backward Probabilities
    Re53:读论文 How Can We Know What Language Models Know?_第24张图片

你可能感兴趣的:(人工智能学习笔记,语言模型,人工智能,自然语言处理)