Meta Learning for Natural Language Processing: A Survey (2022)

Abstract: Deep learning has been the mainstream technique in the natural language processing (NLP) area. However, deep learning requires many labeled data and is less generalizable across domains. Meta-learning is an arising field in machine learning. It studies approaches to learning better learning algorithms and aims to improve algorithms in various aspects, including data efficiency and generalizability. The efficacy of meta-learning has been shown in many NLP tasks, but there is no systematic survey of these approaches in NLP, which hinders more researchers from joining the field. Our goal with this survey paper is to offer researchers pointers to relevant meta-learning works in NLP and attract more attention from the NLP community to drive future innovation. This paper first introduces the general concepts of meta-learning and the common approaches. Then we summarize task construction settings, applications of meta-learning for various NLP problems and review the development of meta-learning in the NLP community.

## introduction recently, deep learning (dl) based natural language processing (nlp) has been one of the research mainstreams and yields significant performance improvement in many nlp problems. however, dl models are data-hungry. the downside limits such models' application to different domains, languages, countries, or styles because collecting in-genre data for model training are costly. to address the challenges, meta-learning techniques are gaining attention. meta-learning, or learning to learn, aims to learn better learning algorithms, including better parameter initialization @xcite , optimization strategy @xcite , network architecture @xcite @xcite , distance metrics @xcite @xcite , and beyond @xcite . meta-learning allows faster fine-tuning, converges to better performance, yields more generalizable models, and it achieves outstanding results for few-shot image classificaition @xcite . the benefits alleviate the dependency of learning algorithms on labels and make model development more scalable. image processing is one of the machine learning areas with abundant applications and established most of the examples in the previous survey papers on meta-learning @xcite . on the other hand, there are works showing benefits of meta-learning techniques in performance and data efficiency via applying meta-learning to nlp problems. please refer to tables 2 and 3 in the appendix for nlp applications improved by metalearning. tutorial @xcite and workshop @xcite ) are organized at acl 2021 to encourage exchange and collaboration among nlp researchers interested in these techniques. to facilitate more nlp researchers and practitioners benefiting from the advance of meta-learning and participating in the area, we provide a systematic survey of meta-learning to nlp problems in this paper. there is another survey paper on meta-learning in nlp @xcite . while yin (2020) describes meta-learning methods in general, this paper focuses on the idea of making meta-learning successful when applied to nlp and provides a broader review of publications on nlp meta-learning. this paper is organized as below. due to space constraints, we will not give too many detailed descriptions of general meta-learning techniques in this survey paper. for general concepts of meta-learning, we encourage readers to read the previous overview paper @xcite @xcite . ## background knowledge for meta learning the goal of machine learning (ml) is to find a function f θ (x) parametrized by model parameters θ for inference from training data. for machine translation (mt), the input x is a sentence, while f θ (x) is the translation of x; for automatic speech recognitoin (asr), x is an utterance, while f θ (x) is the transcription; in dl, θ are the network parameters, or weights and biases of a network. to learn θ, there is a loss function l(θ; d), where d is a set of paired examples for training, in meta-learning, what we want to learn is a learning algorithm. the learning algorithm can also be considered as a function, denoted as f φ (.). the input of f φ (.) is the training data, while the output of the function f φ (.) is the learned model parameters, or θ * in (3). the learning algorithm f φ (.) is parameterized by meta-parameters φ, which is what we want to learn in meta-learning. if f φ (.) represents gradient descent for deep network, φ can be initial parameters, learning rate, network architecture, etc. different meta-learning approaches focus on learning different components. for example, model-agnostic meta-learning (maml) focuses on learning initial parameters @xcite , which will be further descried in section 4.1. learning to compare methods like prototypical network @xcite in section 4.2 learn the latent representation of the inputs and their distance metrics for comparison. network architecture search (nas) in section 4.3 learns the network architecture @xcite @xcite . to learn meta-parameters φ, meta-training tasks t train are required. in meta-learning, there is a loss function l(φ; t train ), which represents how "bad" a learning algorihtm paramereized by φ is on t train . l(φ; t train ) is the performance over all the tasks in t train , the definition of the function l(.) above is the same as in (2). l(θ n ; q n ) for each task t n is obtained as below. for each task t n in t train , we use a support set s n to learn a model by the learning algorihtm f φ . the learned model is denoted as θ n , where θ @xmath0. this procedure is equivalent to typical ml training. we called this step withintask training. then θ n is evaluated on q n to obtain l(θ n ; q n ) in (5). we called this step within-task testing. one execution of within-task training and followed by one execution of within-task testing is called an episode. the optimization task below is solved to learn meta-parameteres φ. if φ is differentiable with respect to l(φ; t train ), then we can use gradient descent to learn metaparameters; if not, we can use reinforcement learning algorithm or evolutionary algorithm. solving (6) is called cross-task training in this paper, which usually involves running many episodes on meta-training tasks. to evaluate φ * , we need meta-testing tasks t test , tasks for evaluating algorithms parameterized by meta-parameters φ * foot_0 . we do cross-task testing on t test , that is, running an episode on each meta-testing task to evaluate algorithms parameterized by meta-parameters φ * . in order to facilitate the reading of our paper, we summarize the most important terminologies and their meanings in ## task construction in this section, we discuss different settings of constructing meta-training tasks t train and metatesting tasks t test . ## meta-learning for nlp tasks this section shows the most popular meta-learning methods for nlp and how they fit into nlp tasks. due to space limitations, only the major trends are mentioned. please refer to ## meta-learning beyond accuracy in the previous sections, meta-learning is used to obtain better evaluation metrics for nlp applications. this section illustrates how meta-learning can improve nlp applications from more aspects beyond performance. ## conclusion this paper investigates how meta-learning is used in nlp applications. we review the task construction settings (section 3), the commonly used methods including learning to initialize, learning to compare and neural architecture search (section 4), and highlight research directions that go beyond improving performance (section 5). we hope this paper will encourage more researchers in the nlp community to work on meta-learning.