생각하는 아져씨

[Coursera] Generative Configurations : Max tokens, Top-k, Top-p, Temperature 본문

Machine & Deep Learning/Generative AI

[Coursera] Generative Configurations : Max tokens, Top-k, Top-p, Temperature

azeomi 2023. 8. 10. 00:57

앤드류 응 교수님의 강의를 듣고 정리 및 공부한 글임을 알려드립니다.

Generative AI with LLMs
In Generative AI with Large Language Models (LLMs), created in partnership with AWS, you’ll learn the fundamentals of how generative AI works, and how to deploy it in real-world applications.

 

다음 단어 생성에 영향을 미치는 Configurations

  • max new tokens
  • sample top k
  • sample top p
  • Temperature

LLM이 next-word 생성을 거치며 final-decision까지 영향을 주는 요인에는 Configuration Parameters가 존재합니다.

위 4개의 parameters는 모델이 Inference 할 때 output을 출력하는데 영향을 주게 됩니다. 학습 시 paramters와 다른 의미를 가지고 있죠!

max new token은 토큰의 최대 길이를 정하는 파라미터이고, 나머지 3개는 output이 얼마나 creative하게 나오는지를 결정하게 됩니다.

 

Max new tokens

LLM에서 softmax를 거쳐 output이 생성되는데, 이 때 max new tokens에 따라서 출력의 길이가 결정됩니다.

숫자가 커질수록 출력하는 output의 길이가 길어지게 됩니다. 마지막은 <end> 토큰이 나오며 문장의 마지막임을 구분할 수 있죠!

이렇게 Max new tokens 파라미터는 output의 길이를 결정하게 됩니다. 그럼 나머지 3개의 파라미터는 모델의 출력에 어떤 영향을 주는 걸까요? 알아보기 전에 문장이 생성되는 default 과정을 복습해 보겠습니다.

 

1) Greedy Decoding & Random Sampling

Next word를 생성할 때 가장 default로 많이 쓰이는 방법은 Greedy Decoding 전략입니다. vocab의 probability distribution에서 가장 높은 확률을 가지는 단어를 선택하는 방법이죠! 위 그림에서는 가장 높은 확률 값인 0.20을 가진 Cake이 선택됩니다.

Greedy Decoding은 짧은 문장에 장점이 있는 반면, 반복적인 단어를 계속해서 출력할 가능성이 높다는 단점이 존재합니다. 이를 피하기 위해서 다른 control이 사용되어야 하는데 그 방법 중 하나가 바로 Random Sampling입니다.

그럼 Random Sampling은 어떻게 선택하는 걸까요?

Greedy Decoding과 달리 가장 높은 확률 값을 가진 Cake이 선택되지 않았습니다. Random sampling은 randomness를 활용해 Cake(20%), Banana(2%)가 선택될 기회가 결정되는 것입니다.

Random Sampling은 다양성을 줄 수 있는 가장 쉬운 방법이지만 단어가 반복되는 Likelihood를 더 줄일 수 있는 방법들이 존재합니다. Top-k, Top-p, Temperature를 활용해 더 creative 한 출력을 만들어낼 수 있습니다.

주의할 점은 설정에 따라서 지나치게 creative 한 결과가 나온다면, 우리의 의도에 맞지 않는 주제 및 단어가 나오겠죠! 🤣

 

Top-k & Top-p

Random sampling 기법들로 Random sampling에 일종에 제한을 주는 파라미터입니다.

먼저, Top-k는 vocab의 probability distribution에서 높은 확률을 가지는 K개의 output을 보는 것입니다.

 

Top-p는 random-sampling을 합산 확률이 p를 초과하지 않는 predictions 들로 제한할 수 있게 합니다. 좀 더 자세히 예시를 보면 다음처럼 됩니다.😙

 

Temperature

probability distribution의 shape에 영향을 주는 파라미터입니다.

  • higher temperature → higher randomness
  • lower temperature → lower randomness

여기까지 모델이 Inference 할 때 output을 출력하는데 영향을 주는 4가지 파라미터에 대해 알아보았습니다.

다음 포스팅 : 4가지 파라미터 활용해서 문장의 다양성이 얼마나 변화되는지 확인하기 😋