题目
TextBrewer详解+代码
前言
今天读了一篇论文《TextBrewer: An Open-Source Knowledge Distillation Toolkit for Natural Language Processing》,它的核心思想不是发明了一种新的知识蒸馏的方法,而是根据现有的知识蒸馏的方法进行了总结和归纳封装成了一个工具包。使得知识蒸馏的过程更加规范和统一。
确实对此颇有感受,最近一段时间读了几篇不同的关于知识蒸馏的论文,虽说每个方法针对特点的任务都有很好的效果,但是复现起来太难,这也就是我为什么一直没有再更新的原因了。不说别的,光是BERT模型的蒸馏就好多,包括PatientKD、DistilBERT、TinyBERT,更别说我还没看过的论文。😂太多了,每种方法还都不太统一,这意味着你需要做很多额外的工作来适应这些蒸馏步骤,对于一个并不主攻KD的人来说,简直太痛苦,就好比我就是用这个KD来缩小一下模型,你却告诉我还有九九八十一难😭。
还好咱中国人出手了,TextBrewer来了…
TextBrewer
简介就不说了,网上搜都能搜到。下面说一下它的特点,以及如何使用。
a PyTorch-based distillation toolkit for NLP that aims to provide a unified distillation workflow, save the effort of setting up experiments and help users to distill more effective mo