|预训练语言模型:还能走多远?( 二 )


第三个就是学习层面 , 有了模型之后 , 就需要去通过数据去学习模型的参数 , 即数据驱动 。
|预训练语言模型:还能走多远?
本文插图

预训练模型 , 称之为PTM , 即Pre-Trained Models , 它有三个主要关键 , 其一是它的架构设计 , 其二就是它的数据类型 , 其三是二者的结合 。 不同的预训练模型主要区别是这三个部分的不同 。
下面简单谈谈对未来方向的思考 。
第一是预训练模型的上限是多少?
虽然现在GPT-3已经出来了 , 但我个人感觉GPT-3不是一个正确的方向 , 因为它不仅受限于它的任务形态 , 而且有相当的局限性 。 我们依然用更大的数据 , 用更加开放性的架构去推动 PTMs , 是不是能够继续往前发展?到底是数据重要还是设计好任务更重要?
Richard Sutton有个观点 , AI发展到今天 , 大部分是靠算力的发展来推动的 。 尽管我们每个人都会加入自己的一些先验的东西 , 但最终证明都不如算力的突破来的有效 。
第二个是 , Transformer最大的问题就是它的复杂度 , 很难去处理长文档而且容易过拟合 。
所以这个模型肯定不是最终形态 , 一定会有所改进 。 我们在这方面也进行了一些尝试 , 比如Star-Transformer , BP-Transformer等 。 Star-Transformer在两两连接之间加一个中继节点 , 可以大幅降低它的复杂度 。 虽然这个模型比较有效 , 但它在GPU上的性能反而不如Transformer , 因为Transformer更利于大块矩阵的计算 , 这就是目前的现状 , 但我觉得还是可以往这个方向继续去改进 。
第三个就是预训练模型里面到底隐含了哪些知识?
我们要理解一个语言或者一段文本 , 要分成两方面的知识 , 一是语言知识 , 二是世界知识 。 而目前大家一般认为语言知识是有限的 , 换言之 , 我们不需要见过非常多的数据才能掌握语言知识 。 通过增大训练数据可能大部分带来的知识增长都是world knowledge , 但是world knowledge不是一定要隐含在PTMs里面的 。
|预训练语言模型:还能走多远?
本文插图

第四个就是任务定向的预训练以及任务定向的模型压缩 。
主要目的是为了不让资源成为瓶颈 , 否则参与研究的人就会越来愈少 。 所以我觉得小规模、小型化或者任务定向的设计会比较有优势 。
第五个就是怎么用PTM 。
现在很多的文章都在讨论PTM怎么训练、设计和改进 。 其实还有一个方向是如何将它用好 。 其实BERT刚出来的时候 , 我们就去探讨了怎么用它 , 然后提了一个 Two-stage和Three-stage的一个knowledge transfer , 这个工作发表在CCL上 , 并获得了最佳论文奖 。
另外关于怎么用好 , 我们可以根据BERT的训练性质 , 把比如一个普通的文本分类问题变成一个匹配的问题 。 这种学习范式上的变化在很多任务上都得到了非常有效的验证 。
总的说来 ,Fine-tuning并不是一个参数有效的方法 。 因为有很多个不同任务 , 而每一个任务都需要保持一个很大的Fine-tuning后的模型 , 这样非常低效 。 因此我们需要探索更有效的预训练模型使用方法 。 比如用PTMs去做数据增强 , 用它本身去产生数据 , 然后用数据去训练新的模型 , 或者直接把它作为一个外部knowledge , 然后做一个结构化的knowledge去查询 。
第六个就是可解释性以及可信赖性 。
我们有个工作在做BERT-Attack , 即将BERT作为一个攻击器去攻击另外一个BERT , 因为BERT是masked language model , 所以更容易产生和原句类似的欺骗句子 。
最后我们引用一句我们古人的话叫“读万卷书 , 行万里路” 。 现在预训练模型是做到了前半句 , 但后半句也非常重要 。


推荐阅读