transformer 기반의 모델을 이용하려고 할 때 downstream task를 적용하기 위한 작은 데이터를 위해 full fine tuning 하는 것이 비효율적이다.
따라서 transformer의 좋은 generalization 성능을 유지하면서 기존의 pretrained w를 이용하고 다른 태스크의 학습 및 추론 효율을 높이기 위한 목적으로 위 연구가 이루어졌다고 생각한다. (그러나 transformer 기반 모델에서만 특정짓지 않고 모든 모델의 레이어에 적용가능하다.)
아래 내용은 해당 논문과 AI Factory의 유튜브 세미나를 참고하여 작성하였다.
Large-scale pretrained Model의 한계
low rank를 찾아서 중요한 정보만 뽑아서 뭔가를 하고싶다는 컨셉(PCA랑 비슷)
a, b라는 두 매트릭스로 원본데이터를 충분히 옵티마이저할 수 있다.
GPT-3의 경우에는 12,888에 해당하는 원본(full-rank)정보를 r=1,2 정도의 low rank에서도 표현이 가능하더라
→ 즉 LoRA approach는 time & space complexity를 획기적으로 줄일 수 있다.
기존의 dxd matrix를 dxr (A), rxd (B)로 나누어 학습하기 때문에 파라미터가 굉장히 줄어든다.
W는 freeze
A, B가 W0를 가지고 weight update (마치 W 옆에 붙어가지고 옆에다가 정보를 간접적으로 제공해주게 된다. )
W= W0 + BA