Portfolio

IntelliGEN


Project Objective

  이 프로젝트에서 학습 효율성과 성능의 저하 없이, 진보된 방식으로 트랜스포머 모델의 생성 능력을 향상 시키기 위한 IntelliGEN이라는 학습 방법론을 제시합니다. 그리고 이 학습 방법론의 효용성을 기계 번역과제에서 검증했으며, 각 단계별 00%, 00%의 성능 개선이 이루어졌음을 확인했습니다.


  1.   Introduction

  • Description
  •   일반적으로 트랜스포머는 어텐션 연산 기반을 통한 병렬적 학습을 진행하며, 덕분에 대규모 데이터를 바탕으로 학습하기에 용이합니다. 덕분에 트랜스포머는 훈련 과정에서 전례없던 효율성과 뛰어난 성능을 자랑하지만, 실제 문장을 생성하는 추론과정과 학습 방식에서의 괴리때문에 생성능력이 상대적으로 아쉽다는 단점이 존재합니다. 그렇다고 학습과정과 추론과정을 통일시키는 생성적 학습법은 효율성과 성능 측면 모두에서 매우 비효율적인 선택지입니다. 때문에, 트랜스포머 본연의 학습 효율성을 지키며, 추론과 학습의 괴리를 줄이기 위한 보다 똑똑한 생성적 학습 방법론이 필요합니다. 이 프로젝트에서는 일반 병렬학습, 일부 생성 미세조정, SeqGAN 미세조정이라는 세가지 스텝으로 이어지는 진보된 학습방법론을 제시하고, 그 결과를 검증합니다.

  • Objective
    • 소규모 데이터셋에서 Generative Training의 효용성 검증
    • Cache를 활용해 효울적인 생성이 가능한 Transformer 구현
    • 네 가지 학습 경우의 수를 변인으로 두어 다각적인 비교 검증

  2.   Background

  • Discrepency between Training & Inference

      Transformer는 자연어 처리 및 기타 시퀀스 기반 작업에 매우 효과적인 신경망 아키텍처입니다. 이 아키텍처의 중요한 특징 중 하나는 어텐션 메커니즘을 통한 병렬 학습에 대한 뛰어난 지원입니다. 기존의 순환 신경망(RNN)과 비교하여 트랜스포머는 많은 입력 토큰을 동시에 처리할 수 있어 훈련 속도를 크게 향상시킵니다.

  • Generative Training

      ...

  3.   Training Strategy

  • Standard  Training
  • Generative  Fine-Tuning
  • SlowGAN  Fine-Tuning
  • Overall  Process
    • 1. Standard Training으로 일반화 능력 배양
    • 2. Generative Fine-Tuning으로 생성 능력 향상
    • 3. SlowGAN Fine-Tuning으로 보다 자연스러운 생성 능력 향상

  3.   Experimental Setup

  • Data Setup
    • Translation Task:   WMT'14 En-De
    • Dialogue Task:   Daily Dialogue
    • Tokenizer:   BPE Tokenizer
    • Vocab Size:   10,000
    • Train Data Volumn:   50,000
    • Train Data Volumn for Augment Training:   50,000
    • Valid Data Volumn:   5,000
    • Test Data Volumn:   100
  • Model Setup
    • Architecture:   Transformer
    • Input Dim:   15,000
    • Output Dim:   15,000
    • Hidden Dim:   256
    • Pff Dim:   512
    • Model Params:   15,488,664
    • Model Size:   60.085 MB
  • Training Setup
    • Num Epochs:   10
    • Batch Size:   32
    • Learning Rate:   5e-4
    • LR Scheduler:   ReduceLROnPlateau
    • Optimizer:   AdamW
    • Apply Gradient Checkpoint:   True
    • Gradient Accumulation Steps:   4
    • Early Stop Patient:   3

  4.   Result

  • Result  Table
  • Training Type Score Epoch Time Avg GPU Max GPU
    Standard 3.36 0m 11s 0.20GB 0.85GB
    Generative 0.00 4m 40s 1.92GB 3.86GB
    Consecutive 0.66 4m 49s 1.92GB 3.86GB
    Augement 11.95 1m 00s 0.21GB 0.87GB
  • Result  Analysis
  •   두 가지 과제에서 모두 Generative Training은 성능과 효율성 측면에서 가장 낮은 결과를 보이며, 효용성이 매우 떨어짐을 확인할 수 있습니다. Transformer의 학습에서 Generative Training이 얼마나 비효율적인지 직접 확인할 수 있었습니다.

  5.   Conclusion

  프로젝트의 시작에서 가용한 데이터의 수가 제한적인 경우, Generative Training 방식이 Transformer 성능 증진에 도움이 될 것이라는 가설을 세웠습니다. 결과를 확인해보면, Transformer와 Generative Training은 상성이 매우 좋지 않음을 확인할 수 있었습니다. 이를 통해 가설이 틀렸음을 검증함과 동시에, Transformer의 성능 개선을 위해 Data의 확보가 얼마나 중요한지 다시 한번 확인할 수 있었습니다.

  6.   Reference