learningAI
article thumbnail

현재까지 공개된 GPT-3.5, ChatGPT, Claude 등의 많은 instruction-following 모델들은 매우 강력한 성능을 보여주며, 사람들은 이러한 서비스를 적극적으로 활용하고 있다. 하지만 여전히 instruction-following 모델들은 다음과 같은 문제들을 가지고 있다.

 

  • Hallucination(거짓 정보 제공)
  • Social stereotypes(사회적 고정관념)
  • Toxic language(유해한 언어)

 

현존하는 문제들을 해결하기 위해 학술적 연구가 더욱 진행되어야 하지만, 안타깝게도 text-davinci-003와 같이 좋은 성능을 보이는 모델에 대한 접근이 거의 불가능하기 때문에 instruction-following 모델에 대한 연구가 진행되기 어렵다.

 

스탠포드의 연구팀은 Meta에서 공개한 LLaMA 7B 모델을 기반으로 학습된 Alpaca를 공개한다. 해당 모델은 text-davinci-003(GPT-3.5)로 생성된 52K self-instruct 데이터로 fine-tuning을 진행했으며, 결과적으로 평가 과정에서 text-davinci-003와 비슷한 성능을 보여준다. Alpaca가 7B 파라미터 수를 사용하는 것을 생각하면 정말 놀라운 결과가 아닐 수 없다.

 

Alpaca에 대한 학습 세팅과 데이터는 공개되었으며, 추후에 파라미터 가중치 또한 공개할 예정이라고 한다. 연구팀은 학술적 목적으로 Alpaca의 데모를 공개했으며, 수집된 정보로 이후에 추가적인 평가를 진행할 것이라고 한다.

 

Training recipe

주어진 학습 비용 아래 high-quality instruction-following 모델을 훈련시키기 위해서는 다음 두가지 조건이 있다.

  • A strong pre-trained model
  • High-quality instruction data

첫번째 조건은 Meta의 LLaMA 모델을 사용함으로써 해결된다. 두번째 문제는 수동적인 instruction data 생성으로는 해결하기 어렵다. Self-instruct 논문에서 소개된 method를 사용하면 이를 해결할 수 있으며, OpenAI에서 공개한 text-davinci-003을 사용해서 고품질 instruction data를 생성하여 사용한다. Instruction data는 52K개의 label을 포함하고 있으며, 최종적으로 LLaMA 7B 모델로 fine-tuning 과정을 거치면 Alpaca 모델이 된다.

 

위의 그림은 Alpaca의 전체적인 training process를 보여준다. Instruction data는 앞서 언급했듯 self-instruct method를 사용해 생성되며, 175개의 초기 instruct seed가 주어지며 추가적으로 52K개의 instruction data를 생성한다. 데이터 생성 비용으로는 $500 정도가 들었다고 한다.

 

Fine-tuning은 huggingface 환경에서 구현되었으며, FSDP와 같은 테크닉을 사용해 cost를 감소시켰다. 학습은 8 A100 GPUs를 사용해 3시간동안 진행되었으며, 결과적으로 $100 정도의 비용이 소모되었다. 추가적으로 비용을 감소시킴으로써 학습 효율이 개선될 수 있다는 내용을 언급한다.

 

Preliminary Evaluation

평가 데이터셋은 self-instruct가 사용되었으며, 5명의 student author가 참여했다. Self-instruct set은 email writing, social media, productivity tool 등의 다양한 도메인을 포함하고 있다. text-davinci-003과 Alpaca 7B 모델의 blind pairwise comparison을 진행했을 때 비슷한 결과를 얻을 수 있었으며, Alpaca가 90번의 비교 중 무려 89번을 이겼다고 한다 (how❓). 

 

작은 사이즈의 모델이 이정도의 성능을 보일 수 있다는 매우 놀라운 결과를 확인할 수 있었으며, evaluation set에서의 모델 출력을 분석한 결과, Alpaca 모델이 text-davinci-003과 비슷한 출력을 내놓는 것이 확인되었다. 더 많은 평가 데이터를 수집하기 위해 데모 모델을 공개했었으나, 현재는 종료되었다.

 

Alpaca 예시 출력

Limitations

Alpaca 모델의 hallucination, toxicity, 그리고 stereotype와 같은 문제점은 해결되지 않았다. 특히 hallucination은 text-davinci-003과 비교해도 더 많이 발생했다고 한다. 다음의 예시를 보자.

 

Alpaca가 출력한 "Dar es Sallam"은 1974년까지 수도였다고 한다.

또한 Alpaca는 잘 쓰여진 생성문에 잘못된 정보를 포함하기도 한다.

 

 

Future Plans

Alpaca의 저자들은 다음과 같은 추후 연구 방향성을 제시한다.

  • Evaluation: 더 엄격한 평가를 진행하는 것. 더 많은 generative, instruction-following scenario를 수집하는 것.
  • Safety: Alpaca의 risk를 red teaming, auditing, adaptive testing으로 안전성을 보완.
  • Understanding: Training recipe를 변화함에 따라 모델의 capability가 얼마나 증가할지를 실험하는 것.

 

Conclusion

이번 포스팅은 스탠포트 연구팀의 Alpaca를 소개해봤다. 좋은 성능을 가진 오픈소스 LLM이 활발하게 연구되고 있지만, 상용화하기 위해서는 안전성을 보완하는 것이 가장 중요하다는 생각을 해본다.

 

출처

https://crfm.stanford.edu/2023/03/13/alpaca.html

profile

learningAI

@YyunS

인공지능 공부하는 학생입니다!