Microsoft Just Showed us the Future of ChatGPT with LongNet
- Context Length (Sequence Length)
- Sequence Length와 계산 비용 사이에 2차 관계에 있음
- 입력 텍스트 시퀀스의 길이를 두배로 늘리면 챗봇을 실행하는데 드는 비용은 4배가 됨
- 결과적으로 LLM을 구축하는 AI 회사는 입력 시퀀스의 최대 크기를 제한할 수 밖에 없음
- Sequence length의 중요성
- 입력이 풍부할수록 결과가 더 좋아짐 →프롬프트에 제공되지 않는 한 질문에 대답할 때 챗봇은 학습 중에 얻은 weitht에 포함된 지식을 신뢰함
- 하지만 모델은 거의 필터링없이 인터넷 텍스트의 상당 부분을 학습하였음
- pre-trained 모델에서 사전 학습된 지식에 대해 의존을 중단하고 모델이 큐레이팅된 데이터를 사용하여 응답하도록 강제할 수 있음
- 실생활에서 LLM이 특히 유용해지는 대부분의 상황은 모델에 실시간으로 정보를 제공해야 함
- 데이터가 반복적으로 필요할 경우, 해당 지식을 가중치에 포함하도록 모델을 fine-tuning할 수 있이지만 이 데이터는 동적이므로 이동 중에 제공되어야 함
- Sequence Length와 계산 비용 사이에 2차 관계에 있음
- 확장된 어텐션 (Dilating Attention)
- LongNet은 dilated attention으로 동작하는 새로운 transformer 아키텍처
- 중요한 점은 시퀀스 길이에 quadratic cost가 아닌 dilating attention이 linear cost다는 점임
- Dilated attention을 사용하였을 때, 시퀀스가 1B tokens일 때조차 런타임이 1초 이내라는 것
- 벡터의 sparse화
- 최근 시퀀스에서 한개의 단어가 말할 수 있는 단어의 개수를 제한한 sparse transformer가 제안됨
- FLOPS의 수를 줄여 모델의 비용과 latency를 줄이는데 성공하였지만 모델 품질에 부정적인 영향을 미침
- 그런 LongNet은 perplexity가 줄지 않을 뿐더러 이전 모델 보다 더 작아진다. 이것은 두가지 요소 덕분임
- Segment length
- 표준 어텍션의 모든 단어는 다른 모든 단어와 대화하지만 LongNet에서 단어는 해당 세그먼트의 단어만 "대화"함
- Dilated rate
- 단어 간의 통신을 제한하는 sparse transformer와 달리 LongNet은 통신 패턴을 정의함
- 각 단어는 논문에서 dilated rate로 설명된 특정 패턴(예: 시퀀스의 두 단어마다)에 의해 지시된 다른 단어와 먼저 대화함
- "만일 커뮤니케이션이라는 단어를 제한하면 단어가 다른 세그먼트로부터 중요한 컨텍스트를 잃어버릴 수 있음"
- 이것은 사실이며 세그먼트 길이와 dilated rate는 계산 효율성을 위해 전역 attention을 희생함
- 모델을 쓸모없게 만드는 정보의 '전역적' 손실을 방지하기 위해 LongNet은 두 변수(Segment length와 Dilated rate)를 동적으로 변경
- 즉, 모든 단어는 아래와 같이 기하학적 패턴에 따라 크기가 다양하고 다른 dialated rate와 다른 세그먼트 내의 단어와 대화함
- 특정 GPU에 시퀀스의 매 segment를 소화할 수 있어서, 더 효율적인 병렬화와 GPU 사용의 최적화를 허용함 → 또한 학습 비용마저 떨어뜨림
- Segment length
Beware Tunnel Vision in AI Retrieval
How to Chunk Text Data — A Comparative Analysis
'Daily-Trend-Review' 카테고리의 다른 글
2023/08/08: GPT-3.5와 Llama2 비교, 벡터 DB, long contexts (0) | 2023.08.08 |
---|---|
2023/07/31: Aligning LLMs 등 (0) | 2023.07.31 |
2023/07/21(2) : In-Context Learning, Emergent Abilities, (0) | 2023.07.21 |
2023/07/21: MQA, LLaMA2, Flashattention2 (0) | 2023.07.21 |
2023/07/18: Long Sequence (0) | 2023.07.18 |