활동 목표: LG Aimers 강의 2차 정리
활동 결과:
1. 개요
이번 시간에는 LLM의 Decoding, RAG에 대한 소개 형식으로 글을 쓰도록 하겠다.
2. Decoding
Decoding에 대해 설명하기 위해 다시 Transformer를 떠올리기 바란다.
Transformer 아키텍쳐 마지막 부분에서, Unembedding 과정을 거쳐서 softmax로 확률분포를 도출하게 된다.
Decoding은 그러한 확률분포를 통해 다음 토큰에 대한 결과를 어떻게 도출할 것인가를 결정하는 알고리즘이다.
2.1. Greedy Decoding
순서대로 다음 단어를 예측하기 때문에, 트리 형식을 떠올릴 수 있다.

이와 같이 당장 다음 시점에, 높은 확률을 따라가는 것이 Greedy Decoding이다.
하지만 이와 같은 방식은 항상 최적해를 보장하지 않는다.
당장 그림의 예시만 보아도 "The nice woman..."은 0.5 * 0.4 이지만, "The dog has..."는 0.4 * 0.9 이다.
2.2. Beam Search
최적해를 선택할 수 있도록, 확률이 높은 n개의 분기를 설정하여 다음 계산에도 포함시키는 것이 Beam Search 알고리즘이다.
위의 예시에서는 The 다음 nice의 확률이 가장 높기에 Greedy Decoding에서는 nice 이후 woman, house, guy 만 계산하지만
Beam Search에서는 dog의 분기를 남겨두어, and, runs, has까지 계산하는 것이다.
당연히, 계산 효율은 분기를 남겨둠에 따라 떨어지게 된다.
2.3. Sampling
어디서 많이 들어봤을 수도 있는 Decoding 방식이다. 현재 LLM이 이 방식을 채택하고 있기 때문이다.
Sampling은 확률에 기반하여 다음 단어를 뽑는 방식이다. 랜덤으로 뽑는다고 이해하면 될 것 같다.
지난번, Temperature에 대해 설명할 때 Decoding 방식이 Sampling이었다.
Temperature를 통해 확률 분포를 증폭, 균등하게 만들어서 무작위성을 높이고 낮출 수 있다.
이러한 Sampling 방식에서는 확률이 낮은 것도 결과로 나올 수 있다는 양날의 검과 같은 장단점이 존재한다.
따라서 이를 보완하기 위해 Top-k, Top-p를 사용할 수 있다.
확률이 높은 k개의 후보에서만 Sampling
누적 확률 합이 p 보다 낮은 후보에서만 Sampling
여기까지 대중적으로 알려진 Decoding 방식이고, 추가로 더욱 심화된 Decoding 알고리즘에 대해서는 언급만 짧게 하려고 한다.
2.4. 심화 Decoding 알고리즘
- Diverse Beam Search - Beam Serach에서 중복 정보를 선택하는 문제로 인해 확률이 낮더라도 다양하게 선택할 수 있도록 만드는 것. Group을 지정해 타 Group과 유사한 정보를 피하도록 함.
- Contrastive Decoding - 큰 모델과 작은 모델을 사용하여 큰 모델이 예측하는 상위 범주 내에서 작은 모델의 확률분포와의 차이를 Sampling하여 뻔한 정보, 실수 등을 최소화함.
- Speculative Decoding - 작은 모델이 큰 모델 대신 추론하여 큰 모델과 동일한 추론 결과를 도출하게 만드는 알고리즘. (Cost 절감)
3. RAG(Retrieval Augmented Generation, 검색 증강 생성)
LLM을 많이 사용해 보았으면 할루시네이션(Hallucination)에 대해 들어보고, 경험해보았을 것이다.
LLM이 정확하지 않은 답변을 마치 정확한 것처럼 답변하는 현상인데, 이는 LLM이 학습한 정보 내에서 답변을 도출하기 때문이다.
차라리 신뢰성있는 외부 정보에서 가져오면 좋을텐데...
RAG는 이러한 문제에 착안하여, 신뢰성 있는 외부 Source에서 정보를 통해 답변을 생성하는 기법이다.
이를 통해 최신 정보, 특정 도메인 지식 등을 더욱 신뢰성 있게 답변할 수 있도록 한다.
이러한 RAG에서 문제가 생길 수 있는 부분이 있다.
1. 굉장히 많은 정보를 가져와 context를 초과할 때
2. input query의 품질이 좋지 않아 답변의 품질이 좋지 않을 때
3. Noise가 들어왔을 때
이를 보완하기 위해 REPLUG, HyD, RetRobust 와 같은 연구를 소개하였는데, 이에 대한 정보는 따로 찾아보길 바란다.
'모각코' 카테고리의 다른 글
| [2026 동계 모각코] 6회차 활동 결과 - EXAONE Quantization (0) | 2026.02.18 |
|---|---|
| [2026 동계 모각코] 5회차 활동 결과 - LLM Agent (0) | 2026.01.30 |
| [2025 동계 모각코] 3회차 활동 결과 - Fine tuning과 Domain Adaptation (0) | 2026.01.12 |
| [2026 동계 모각코] 2회차 활동 결과 - Transformer 제대로 이해하기 (0) | 2026.01.07 |
| [2026 동계 모각코] 1회차 활동 결과 - 인공지능 코드 실습하기 (0) | 2026.01.01 |