Project Objective
이 프로젝트에서는 멀티턴 대화 생성 모델을 위한 효율적 모델 구조를 다각적으로 탐구해봅니다.
  1.   Introduction
- Description
- Objective
- Scheduled Sampling for Transformers 구현
- Sampling Ratio 별 자연어 생성 능력의 변화 확인
- Scheduled Sampling의 Exposure Bias 완화 기능 확인
자연어 생성을 위한 Sequence to Sequence 모델 구조에서는 Exposure Bias라는 문제점이 빈번하게 발생합니다. 학습과정과 실제 추론과정 사이 괴리에서 기인하는 이 문제를 해결하기 위한 다양한 방법론이 존재하며, 그 방법론 중 하나가 바로 Scheduled Sampling. 하지만 Scheduled Sampling은 학습과정 안에서 생성을 동반하기 때문에 Transformer에 사용하기 적합하지 않습니다. 하지만 이런 문제를 해결하며 새로운 방법론을 제시한 Scheduled Sampling for Transformers라는 논문이 있었습니다. 이 논문에서 아이디어를 얻어, 이 프로젝트에서는 다양한 Sampling Ratio 별 Scheduled Sampling의 효용성을 세가지 자연어 과제에서 검증해봅니다.
  2.   Background
- Multi Turn Dialigue Generation
Multi Turn Dialigue Generation은 ...
- Dialogue History
Dialogue History는 ...
  3.   Architecture
- History Concat Model
History Concat Model ...
- History Fusion Model
...
  4.   Experimental Setup
- Data Setup
- Dataset: Daily Dialogue
- Tokenizer: BPE Tokenizer
- Vocab Size: 15,000
- Train Data Volumn: 50,000
- Valid Data Volumn: 5,000
- Test Data Volumn: 100
- Model Setup
- Input Dim: 15,000
- Output Dim: 15,000
- Embedding Dim: 512
- Hidden 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
- Hardware: Google Colab A100 GPU
- Optimizer: AdamW
- Apply Gradient Checkpoint: True
- Gradient Accumulation Steps: 4
  5.   Result
- Machine Translation
- Dialogue Generation
- Text Summarization
- Result Analysis
Sampling Ratio | Score | Epoch Time | Avg GPU | Max GPU |
---|---|---|---|---|
0.0 | 12.99 | 0m 44s | 0.20GB | 0.95GB |
0.1 | 2.11 | 1m 00s | 0.20GB | 0.95GB |
0.3 | 7.34 | 1m 00s | 0.20GB | 0.95GB |
0.5 | 6.94 | 1m 00s | 0.20GB | 0.95GB |
Sampling Ratio | Score | Epoch Time | Avg GPU | Max GPU |
---|---|---|---|---|
0.0 | 2.03 | 0m 43s | 0.20GB | 0.85GB |
0.1 | 2.31 | 0m 59s | 0.20GB | 0.85GB |
0.3 | 2.34 | 0m 59s | 0.20GB | 0.85GB |
0.5 | 0.82 | 0m 59s | 0.20GB | 0.85GB |
Sampling Ratio | Score | Epoch Time | Avg GPU | Max GPU |
---|---|---|---|---|
0.0 | 7.60 | 2m 44s | 0.21GB | 2.78GB |
0.1 | 2.95 | 3m 8s | 0.21GB | 2.78GB |
0.3 | 4.10 | 3m 8s | 0.21GB | 2.78GB |
0.5 | 5.39 | 3m 8s | 0.21GB | 2.78GB |
Scheduled Sampling이 대화 생성에서는 긍정적인 영향을 끼치긴 했지만, 미미한 수준에 그칠 뿐이며, 나머지 과제에서는 모두 성능과 효율성 모두에 악영향을 미쳤습니다. 이를 통해 Scheduled Sampling이 Transformer에서는 맞지 않는 학습 방식임을 알 수 있습니다.
  6.   Conclusion
이 프로젝트에서는 Scheduled Sampling for Transformers 논문에서 소개한 내용을 토대로, 코드를 구성하고, 세가지 자연어 생성 과제에서 그 성능을 검증해봤습니다. 결과적으로는 Scheduled Sampling for Transformers 방법론이 Transformer에는 맞지 않는 학습 방식이라는 것을 확인했습니다. Exposure Bias라는 문제점을 완화하기 위한 다양한 방법론 중 하나를 직접 검증해보며, 추후 Exposure Bias 완화를 위한 연구에 참고점으로 삼을 수 있을 것 같습니다.