본문 바로가기

논문리뷰

[논문리뷰] LIFT: Language-Interfaced Fine-Tuning for Non-Language Machine Learning Tasks (3/3)

4. Evaluation of LIFT-Specific Learning Properties

이 절에서는 LIFT를 더욱 세밀하게 조사해본 결과를 설명하고 있다.

 

4.1. Does LIFT Benefit from Incorporating Feature Names?

standard machine learning algorithm과 달리, LIFT는 feature name과 task description을 prompt에 통합하여 context information을 제공받을 수 있다. 직관적으로, 이러한 통합은 pretraining 단계에서 이미 학습된 이전 지식이 LIFT의 sample complexity를 개선하는 데 도움을 줄 수 있다. 7개의 prompt template을 설계하여 feature name을 통합하는 것이 LIFT의 성능에 어떤 영향을 미치는지 평가했고, 그 결과를 Table 9로 정리하였다. 우선 표를 보면 모든 LIFT 모델이 상당한 정확도 차이를 가지고 MCC보다 우수한 성능을 보여준다는 것을 알 수 있다. 둘째로, CMC를 제외한 dataset의 경우 올바른 feature name을 포함시키는 것이 LIFT의 성능을 향상시키는 데 도움이 된다는 것을 알 수 있다. 셋째로, shuffled feature name을 갖는 prompt를 사용하는 경우 (Shuffled-Names I, II) LIFT의 성능이 상당히 감소한다는 것을 발견했다. 이러한 결과는 앞서 언급한 성능 향상이 올바른 feature/value association을 가진 적절한 prompt를 갖춰야 한다는 것을 알려준다.

 

Table 9: The effect of using feature names on LIFT.

 

4.2. Is LIFT Well Calibrated?

LIFT가 보정되어 있는지, 즉 prediction이 confidence를 반영하는지 조사하기 위해 다양한 noise level에서 LIFT의 성능을 탐색하여 Fig.36과 같이 나타내었다. 6개의 synthetic regression dataset에 대해 1,000개의 noisy training sample을 포함시켰고, 이는 첫 번째 행에 파란색 표시되어 있다. 구체적으로, (1) regression task를 위한 input $x$를 생성하고, (2) standard deviation $\sigma(x)=(x+10)/10$ ($-10\leq x\leq 10$) 을 갖는 noisy outcome $y$를 생성한 다음 noise level이 LIFT의 predictive behavior에 어떤 영향을 미치는지 연구하였다. inference phase에서 우리는 random prediction을 만들기 위해 LIFT의 decoding temperature를 $T = 1$로 설정했고, 시각화를 위해 각 task에 대해 [-10, 10] 범위에서 uniform하게 추가로 103개의 샘플을 생성하였다. Fig.36의 아래 행은 각 sample에 대해 20개의 LIFT/GPT-J prediction의 standard deviation을 나타내는데, 이는 LIFT/GPT-J's prediction의 standard deviation이 서로 다른 task에서 noisy training sample의 standard deviation과 거의 일치함을 보여준다. 이러한 결과는 LIFT/GPT-J가 잘 보정되어 있다는 것을 시사한다. 같은 방법으로 LIFT/GPT-3이 보정되어 있음도 보일 수 있다.

 

Figure 36: Investigating calibrated prediction effect of LIFT.

 

4.3. Can We Use LIFT for Data Generation?

Generative model은 computer vision에서 널리 사용되고 있다. classification 및 regression task 다음으로는 LIFT가 generative task에 사용될 수 있는지, 즉 underlying data distribution을 학습하고 realistic data sample을 생성하는 데 사용될 수 있는지 연구하였다. 특히, MNIST dataset에서 두 가지 이미지 생성 작업을 고려했다. (a) digit number에 해당하는 이미지를 생성하는 작업, (b) digit number에 해당하는 이미지의 상단 절반에 있는 픽셀을 기반으로 이미지를 완성하는 작업으로, Fig.10a와 Fig.10b는 각각 두 작업에 대한 생성된 이미지를 보여주고 있다. 대부분의 경우 생성된 이미지가 올바른 숫자 모양을 가지고 있으며, 특히 이미지 완성 작업에 대해서는 상당히 높은 quality를 갖는 것을 관찰할 수 있었다.

 

Figure 10: Generating MNIST images using LIFT/GPT-J.

 

5. Improving LIFT with Existing Techniques

이 절에서는 two-stage fine-tuning과 data augmentation을 통해 LIFT를 향상시키는 방법에 대해 설명하고 있다.

 

5.1. Two-Stage Fine-Tuning for LIFT with Synthetic Pretext Tasks

3.2절에서 LM을 적용하기 위해 충분한 수의 sample이 필요하다는 사실을 관찰했다. non-language task의 경우 LM은 다음의 두 단계를 거쳐야 한다. (1) task description, 즉 input space, label space 및 sentence template을 학습하는 단계, 그리고 (2) target task를 학습하는 단계이다. 따라서, 첫 번째 단계에서 synthetic data를 활용하여 LM에게 task를 describe하여 sample complexity를 줄이는 것을 고려할 수 있다. 이 경우 LIFT를 위한 두 단계의 training procedure가 새로 생성된다. 특히, 주어진 dataset에 대해 먼저 actual data와 같은 수의 feature와 label space (classification task의 경우) 또는 response value의 범위 (regression task의 경우)를 공유하는 간단한 synthetic Gaussian dataset으로 두 가지 pretext task를 생성한다. pretext task에 대해 LIFT를 2번 또는 3번의 epoch만큼 적용한 다음에는 target dataset으로 LIFT를 계속하여 진행한다. GPT-3의 경우 현재 black-box API에서 fine-tuning 단계에서 sample의 순서를 어떻게 유지할 수 있는지는 명확하지 않기 때문에 여기에서는 GPT-J의 실험 결과만 제공한다. Fig.11은 classification 및 regression task에서 training sample의 수가 적을 때, two-stage fine-tuning이 LIFT를 개선시키는 것을 보여준다.

 

Figure 11: Two-stage fine-tuning.

 

5.2. Data Augmentation

data augmentation은 다양한 classification problem의 generalization performance를 향상시키기 위한 간단한 도구이다. 여기서는 data augmentation이 LIFT에 이점을 주는지 조사하였다. Table 12는 training data에 random noise를 추가하는 것이 MNIST classification problem에 대한 LIFT/GPT-J의 성능에 미치는 효과를 보여준다. 여기서는 각 모델을 세 가지 설정, (1) clean data, (2) Gaussian noise, 그리고 (3) signed constant noise에 대해 테스트하고, 각 noise가 MNIST의 흑백 픽셀을 [0, 1] 범위로 표현할 때 각 픽셀에서 $\epsilon$ ∈ [0, 1]의 크기로 왜곡될 수 있도록 허용한다.


data augmentation (DA)을 적용하지 않은 LIFT/GPT-J는 기존의 baseline (LeNet-5, MLP)과는 달리 random noise에 취약한 양상을 보인다. 그러나 data augmentation을 적용하여 noisy training data로 LIFT/GPT-J를 훈련시키면 perturbed test data에 대한 accuracy가 크게 향상된다. 이는 LIFT에서 간단한 data augmentation의 효과를 보여준다.

 

Table 12: Accuracies of LIFT with/without data augmentation (DA), as well as baselines (LeNet-5, MLP) on MNIST.

 

6. Related Works

Fine-tuning for adapting LMs to non-language tasks: fine-tuning pretrained LM은 downstreak task를 학습하는 표준적인 방법으로, adding linear layer 또는 freezing layers와 같은 간단한 architecture 수정을 포함할 수 있다. 최근 기술은 adapter-based fine-tuning, freezing-based fine-tuning, 그리고 distillation-based fine-tuning을 포함하여 trainable parameter를 줄이기 위한 parameter-efficient technique에 초점을 맞추고 있다. 본 연구의 LIFT/GPT-J는 weight matrix를 low-rank로 업데이트해주는 parameter-efficient method인 LoRA를 이용하여 fine-tuned되었다.

기존 LM의 fine-tuning method를 non-language task에 직접 적용하기 위해서는 input/output layers 및 loss function을 수정하는 것이 일반적인 관행인데, 이로 인해 장기적인 기억 손실과 같은 오류가 발생할 수 있다. 본 연구는 대부분의 pretrained parameter를 고정하고 modality adaptation을 위해 input/output layer만 추가하는 것으로, GPT-2에서 language task를 directly fine-tuning하는 Frozen Pretrained Transformer (FPT)로부터 많은 motivation을 얻었다. FPT와 달리, 본 연구의 방법은 architecture와 objective function의 변환이 필요하지 않다. 최근의 연구들은 기존의 LM을 image, audio, tabular data, knowledge base와 같은 다양한 input data type을 처리할 수 있도록 확장하고, 이러한 데이터와 해당 작업을 사용하여 pretraining phase를 업데이트하거나 general-purpose architecture를 사용한다. 본 연구는 오직 textual data만을 사용하여 훈련된 GPT language model을 기반으로 한다는 점에서 차별점을 가진다.

Analyzing the adaptability of LMs: 최근 연구들은 다양한 주제의 200개 이상의 task를 갖는 Big-Bench와 같은 large LM의 adaptability와 capacity를 이해하고 측정하는 시도를 계속하고 있다.

General-purpose models: 본 연구의 주요 목표는 GPT-3과 같은 기존의 일반적인 LM을 다른 modality와 domain으로 확장하는 것으로, domain-and-modality에 중립적인 일반 모델 구축 아이디어를 지원한다. LIFT는 GATO와 같은 LM-like architecture를 갖는 모든 일반 모델에 적용될 수 있다. 또한 본 연구는 automatic machine learning (AutoML)과 궁극적인 목표를 공유하지만, LIFT는 모든 task에 대해 single pretrained LM을 사용하는 반면 AutoML은 기존의 algorithm set에서 standard machine learning pipeline을 자동화한다는 차이점을 갖는다.

 

7. Discussion and Conclusion

본 연구에서는 language-interfaced framework를 제안하고 있다. Language-Interfaced Fine-Tuning (LIFT)을 통해 model의 architecture나 loss function을 변경하지 않고도 LM을 사용하여 non-language downstream task를 해결하는 것이 궁극적인 목표이다. LIFT는 먼저 labeled sample을 문장으로 변환한 다음, standard fine-tuning method와 loss function을 사용하여 pretrained LM을 sentence dataset에 대해 fine-tuning한다. 광범위한 실험적 연구를 통해, LIFT/GPT가 low-dimensional classification과 regression non-language task에서 상대적으로 잘 수행됨을 파악할 수 있었다. 또한 LIFT/GPT는 여러 practical setting에 대해 robust하며, 예측을 적절하게 보정하고 현실적인 데이터 샘플을 생성할 수 있다는 것도 확인되었다. LIFT는 in-context feature names, two-stage fine-tuning, 그리고 data augmentation을 통해 더욱 개선될 수 있었다. 더 나아가, 본 연구는 pretrained LM과 language-interfaced learning framework의 효과를 철저히 연구함으로써 standard regression and classification task에 대해 "no-code machine learning with language models"을 가능하게 하였다.

 

Limitations and open questions: 다양한 task와 setting에서 좋은 성과를 보였지만, LIFT에는 몇 가지 limitation이 관찰되었0다. regression task에서 feature가 high dimension을 갖는 경우나 classification task에서 class의 수가 많은 경우에 LIFT/GPT는 잘 수행되지 않았다. 또한, LIFT의 context 길이는 LM의 context 길이로 제한되며, LIFT/GPT는 메모리의 효율이 좋지 않았다. 이 문제를 해결하기 위해 LinTransformer와 같은 메모리 효율적인 LM과 LIFT를 결합할 수 있을 것이다. 또한, 본 연구는 다음의 흥미로운 질문을 제시한다. 첫째, LM과 LIFT/GPT는 비슷한 decision boundary를 갖는데, 그렇다면 ensemble method나 decision tree와 비슷한 양상을 보일 것인가? 둘째, LM은 어떤 modality와 domain에도 잘 적응할 수 있는 universal model인가? 마지막으로, 더 정교한 encoding을 사용하여 numeric feature에 대해 더 나은 적용을 할 수 있는가?

Social impacts: future research에서는 LIFT의 잠재적인 공정성 문제를 고려해야 할 것이다. large LM을 기반으로 한 LIFT는 특정 사회 그룹에 편중된 결과를 불러일으킬 수 있다. 특히 training prompt에 feature name이 포함된 경우, 모델은 사회적 편향에 더욱 민감해지기에 불공정하고 해로운 예측을 내릴 수 있다.

 

 

총평: LIFT라는 새로운 개념을 소개하고 그 성능에 대해 설명하고 있는 논문이다. non-language form의 데이터셋을 language form으로 변환시키는 과정 없이 fine-tuning할 수 있다는 점이 가장 큰 특징으로 보인다. 아직 개선해야 할 부분이 많아 보이지만 충분히 좋은 시도이자 의미 있는 연구라 생각되고, 후속 연구가 계속해서 진행된다면 좋은 성과를 보여줄 수 있을 것으로 기대된다.