본 글은 이전 글에서 알아본 How Does Quantization Affect Multilingual LLMs? 논문에서 언급된 LLM 양자화가 라틴 계열 언어(영어, 프랑스어 등) 보다 비 라틴 계열 언어(한국어, 일본어, 중국어 등)에 더 큰 영향을 미친다는 연구 결과를 바탕으로 작성하게 된 글입니다.
실제 LLM 모델을 사용하면서 양자화를 적용하는 경우가 대부분이었고, 어느 정도 성능이 저하되는지 궁금하기도 하여 직접 모델에 양자화를 적용해 보고 생성 결과의 품질에 대해 평가해 보았습니다.
현재 주목받고 있는 모델 중 하나인 gemma2-9b-it 모델을 양자화해보고 한국어에 대해서 얼마나 성능 저하가 일어나는지 알아보겠습니다.
모델 양자화란?
일반적으로 딥러닝 모델은 가중치를 16비트 or 32비트 부동소수점(floating point) 형식을 사용하는데, 양자화는 이를 8비트, 4비트, 또는 심지어 2비트로 줄이게 됩니다.
개념을 명확하게 이해하기 위해 간단한 양자화 예제를 살펴보겠습니다. 아래 글은 출처에서 가져온 내용입니다.
FP16 형식의 25개의 가중치 값이 있는 행렬이 있다고 가정해 보겠습니다. 우리는 이러한 값들을 int8 양자화해야 합니다. 아래는 그 과정입니다.
- 이전 범위 = FP16 형식의 최대 가중치 값 - FP16 형식의 최소 가중치 값 = 0.932–0.0609 = 0.871
- 새로운 범위 = Int8은 -128부터 127까지의 숫자를 가집니다. 따라서 범위 = 127-(-128) = 255
- 스케일 = 새로운 범위의 최대 값 / 이전 범위의 최대 값 = 127 / 0.932 = 136.24724986904138
- 양자화된 값 = (스케일 * 원래 값)을 반올림한 값
- 역 양자화된 값 = 양자화된 값 / 스케일
- 반올림 오차 - 여기서 주목할 중요한 점은 역 양자화를 다시 FP16 형식으로 수행할 때 숫자가 완전히 동일하지 않다는 것입니다.
- 첫 번째 요소인 0.5415는 0.543이 됩니다. 대부분의 요소에서 동일한 문제를 확인할 수 있습니다. 이것이 양자화 - 역 양자화 과정의 결과인 오차입니다.
LLM 양자화 테스트
테스트는 각 모델별로 양자화를 적용해 추론되는 결과를 비교해 보는 방식으로 진행하였습니다.
양자화는 bitsandbytes 라이브러리를 활용하여 8bit양자화, 4bit 양자화를 적용하였습니다.
양자화 적용 후 gpu 메모리 사용량을 비교해 보면 아래와 같습니다.
모델 별 성능 테스트
성능 테스트는 각 실험에서 동일한 프롬프트를 입력하여 모델의 응답을 비교하였으며, 각 응답의 출력 내용을 기록하였습니다.
실험 환경:
- 프롬프트: 문장 띄어쓰기를 고려한 문장 재작성, 한국어 속담의 참된 의미 해석, 영어 문장 번역, 기사 요약, 산책에 관한 글 작성
- 사용한 모델: 원본 모델, FP8, FP4로 양자화된 LLM 모델
모델 추론 코드
모델 추론을 위해 사용한 코드는 아래와 같으며, generate를 위한 파라미터 튜닝은 진행하지 않았습니다.
def gen_text(user_message):
messages = [
{"role": "user", "content": user_message},
]
input_ids = tokenizer.apply_chat_template(
messages,
add_generation_prompt=True,
return_tensors="pt"
).to(model.device)
terminators = [
tokenizer.eos_token_id
]
outputs = model.generate(
input_ids,
max_new_tokens=512,
eos_token_id=terminators,
do_sample=True,
temperature=0.4,
top_p=0.9
)
response = outputs[0][input_ids.shape[-1]:]
return tokenizer.decode(response, skip_special_tokens=True)
실험 1: 문장 띄어쓰기 재작성
프롬프트
주어지는 문장의 띄어쓰기를 고려해서 다시 작성해주세요.
문장: 창문밖에소리가나서봤더니바람소리밖에들리지않았다.
- 원본 모델 생성 결과
- 결과 : 창문 밖에 소리가 나서 봤더니 바람 소리 밖에 들리지 않았다.
- 8비트 양자화 생성 결과
- 결과: 창문 밖에 소리가 나서 봤더니 바람 소리 밖에 들리지 않았다.
- 4비트 양자화 생성 결과
- 결과: 창문 밖에 소리가 나서 봤더니 바람 소리 밖에 들리지 않았다.
실험 결과 분석
양자화를 적용한 모델과 원본 모델 모두 결과가 동일하게 생성되었습니다. 그러나 실제 정답과 달랐고, 모두 오답이었습니다..
정답 : 창문 밖에 소리가 나서 봤더니 바람 소리밖에 들리지 않았다.
실험 2: 한국어 속담 해석
프롬프트
주어지는 한국어 속담의 참된 의미가 무엇인가요?
속담: 세 살 버릇 여든까지 간다.
- 원본 모델 생성 결과
- 속담 "세 살 버릇 여든까지 간다"는 **어린 시절의 습관이나 버릇이 나이 들어서도 변하지 않고 계속 이어진다는 뜻**입니다. 즉, 어릴 때부터 익숙해진 행동이나 생각 방식이 성인이 되어서도 쉽게 바뀌지 않고, 오랫동안 영향을 미친다는 것을 의미합니다.
- 8비트 양자화 생성 결과
- 속담 "세 살 버릇 여든까지 간다"는 **어릴 적의 습관이나 버릇이 성인이 될 때까지 계속될 수 있다**는 뜻입니다. 즉, 어린 시절부터 익히는 좋은 습관은 긍정적인 성장을 이끌고, 나쁜 습관은 나중에 큰 문제로 이어질 수 있음을 경고하는 속담입니다.
- 4비트 양자화 생성 결과
- "세 살 버릇 여든까지 간다"는 **어릴 때의 습관이 나이 들었을 때에도 영향을 미친다는 뜻**을 담고 있습니다. 즉, 어릴 때부터 좋은 습관을 들이면 성인이 된 후에도 긍정적인 삶을 살 수 있고, 나쁜 습관을 들이면 나중에 큰 문제를 일으킬 수 있다는 것을 경고하는 속담입니다.
실험 결과 분석
이번 실험에서도 결과가 모두 비슷하였습니다. 또한 실제 의미를 정확히 답변해 낸 것을 알 수 있습니다.
실험 3: 영어 문장 번역
프롬프트
주어지는 문장을 한국어로 번역해주세요.
문장:
Dricus du Plessis quietened his critics by submitting Israel Adesanya and defending his UFC middleweight title against one of MMA’s best fighters in Perth, Australia. The South African had rattled some cages back in late January with comments about being the first fighter to “take the belts” to Africa, following his decision victory over American Sean Strickland to win the middleweight title.
- 원본 모델 생성 결과
- Dricus du Plessis는 호주 퍼스에서 MMA 최고의 파이터 중 한 명인 이사라엘 아데산야를 제압하며 비판자들을 진정시켰고, UFC 중량급 타이틀을 성공적으로 방어했습니다.
1월 말, 미국인 션 스트릭랜드를 제압하여 중량급 타이틀을 획득한 후, "벨트를 아프리카로 가져가는 첫 번째 파이터"라고 말하며 일부 사람들의 불만을 자아냈습니다.
- Dricus du Plessis는 호주 퍼스에서 MMA 최고의 파이터 중 한 명인 이사라엘 아데산야를 제압하며 비판자들을 진정시켰고, UFC 중량급 타이틀을 성공적으로 방어했습니다.
- 8비트 양자화 생성 결과
- 드ricus du Plessis는 호주 퍼스에서 MMA 최고의 파이터 중 한 명인 이스라엘 아데사냐를 제압하며 비판자들을 진정시켰고 UFC 중량급 타이틀을 성공적으로 방어했습니다.
1월 말, 남아프리카 공화국의 그는 미국 숀 스트릭랜드를 상대로 중량급 타이틀을 획득한 결정승 이후 아프리카로 "벨트"를 가져가는 첫 번째 파이터가 될 것이라는 발언으로 일부 논란을 일으켰습니다.
- 드ricus du Plessis는 호주 퍼스에서 MMA 최고의 파이터 중 한 명인 이스라엘 아데사냐를 제압하며 비판자들을 진정시켰고 UFC 중량급 타이틀을 성공적으로 방어했습니다.
- 4비트 양자화 생성 결과
- 드ricus du Plessis는 호주 페스에서 이스라엘 아데산야를 제압하며 UFC 중량급 타이틀을 방어하여 비판자들을 진정시켰습니다.
그는 1월 말, 미국인 세인 스트릭랜드를 상대로 중량급 타이틀을 획득한 이후 아프리카에 "벨트를 가져가는" 첫 번째 격투 선수가 될 것이라는 발언으로 일부 논란을 일으켰습니다.
- 드ricus du Plessis는 호주 페스에서 이스라엘 아데산야를 제압하며 UFC 중량급 타이틀을 방어하여 비판자들을 진정시켰습니다.
실험 결과 분석
이번 실험에서는 양자화를 적용한 모델과 원본 모델이 차이를 보였습니다. 양자화를 적용한 모델들은 격투 선수(아데산야), 지명(호주 퍼스)등을 제대로 번역해내지 못하였습니다.
그럼에도 전체적인 의미가 잘못 번역되거나 문장의 흐름이 부자연스럽다는 느낌은 크게 없어 보입니다.
실험 4: 기사 요약
프롬프트
주어지는 기사를 요약해주세요. 요약 결과는 짧고 간결하게 작성되어야 합니다.
기사:
삼성전자가 올해 초 인공지능(AI) 스마트폰을 선보이면서 AI 스마트폰 시장에 포문을 열었다. 올 하반기엔 애플, 구글 등 글로벌 빅테크 업계를 중심으로 점유율 확보를 위한 전쟁이 본격화될 전망이다. 19일 업계에 따르면 구글은 최근 '메이드 바이 구글' 행사를 열고 AI를 탑재한 신형 스마트폰 '픽셀9' 시리즈를 공개했다. 구글은 지난 13일 행사를 통해 신형 픽셀9에 탑재될 음성 AI 비서 제미나이의 새 기능도 함께 공개했다. 새로운 '제미나이 라이브'는 사용자와 대화가 가능한 AI 모델로 안드로이드폰에서도 '제미나이 어드밴스드' 가입자에게 영어로 서비스를 제공한다. 구글은 매년 10월 신작을 공개했지만 이번엔 이례적으로 일정을 두 달 앞당겼다. 일각에서는 지난달 출시된 갤럭시 Z폴더블6와 다음 달로 예정된 아이폰6 시리즈 출시 시점 사이에 신작을 공개해 두 업체를 견제하려는 의도라는 분석이 나온다. 시장조사업체 IDC에 따르면 전체 스마트폰 시장에서 구글의 점유율은 1%대 미만으로 영향력이 미미한 상황. 다만, 지난달 말 기준 북미 스마트폰 시장에선 점유율 약 8%, 일본 시장에선 지난 2분기 기준 12%로 1위인 애플(56%)에 이어 2위를 차지했다. 구글은 AI 탑재 스마트폰 출시를 통해 영향력을 더욱 넓힐 전망이다. 애플은 올해 하반기를 목표로 애플의 첫 AI폰인 '아이폰16 시리즈'를 출시할 예정이다. 해당 단말기에는 '애플 인텔리전스'라고 불리는 AI 기능이 탑재될 것으로 예측된다. 애플은 다음 달 중순 전후로 언팩행사를 열고 아이폰16 시리즈를 공개할 예정이다. 애플은 지난 6월 초에 열린 세계개발자회의(WWDC)에서 애플의 AI 방향성인 애플 인텔리전스를 발표하고 iOS를 비롯해 올해 안에 새롭게 업데이트되는 소프트웨어에 오픈AI의 GPT-4o 기능을 탑재한다는 계획을 밝혔다. iOS 18.1 베타 버전은 아이폰16 예상 출시일 한 달 뒤인 오는 10월 챗GPT가 탑재된 iOS 18.2는 연말에 배포될 가능성이 있어 아이폰 16시리즈 출시와 함께 AI 기능이 탑재되는 것이 아닌 출시 후 소프트웨어 업데이트 방식으로 기기에 적용될 가능성도 점쳐진다. 블룸버그 통신은 지난달 "애플 아이16 시리즈 출시 몇 주 뒤 애플 인텔리전스가 출시돼 10월에 소프트웨어 업데이트의 일부로 AI 기능을 배포할 계획"이라며 "이에 따라 아이폰16 모델은 새 AI 없이 출시되고 그 뒤에 소프트웨어 업데이트를 요구할 가능성이 있다고 전했다.
- 원본 모델 생성 결과
- 삼성전자의 AI 스마트폰 출시 이후, 구글과 애플이 AI 스마트폰 시장 진출을 위한 경쟁을 본격화할 예정입니다. 구글은 픽셀9 시리즈를 앞당겨 출시하며 제미나이 라이브와 같은 AI 기능을 강조하고 있습니다. 애플은 아이폰16 시리즈에 '애플 인텔리전스' AI 기능을 탑재할 예정이며, iOS 18.2 업데이트를 통해 AI 기능을 배포할 가능성이 높습니다.
- 8비트 양자화 생성 결과
- 삼성전자의 AI 스마트폰 출시로 AI 스마트폰 시장이 열렸고, 구글과 애플이 점유율 확보를 위한 경쟁을 본격화할 예정이다. 구글은 AI 탑재 신형 픽셀9 시리즈를 출시했고, 애플은 10월 중순에 아이폰16 시리즈를 출시할 예정이며, 애플 인텔리전스라는 AI 기능을 탑재할 것으로 예상된다. 애플은 AI 기능을 소프트웨어 업데이트를 통해 배포할 가능성도 있다.
- 4비트 양자화 생성 결과
- 삼성전자의 AI 스마트폰 출시 이후, 구글과 애플이 AI 스마트폰 시장 점유율 확보를 위한 경쟁이 본격화될 전망이다. 구글은 AI 탑재 신형 픽셀9 시리즈를 출시했고, 애플은 다음 달 언팩 행사에서 AI 탑재 아이폰16 시리즈를 공개할 예정이다. 애플은 AI 기능을 소프트웨어 업데이트 방식으로 배포할 가능성도 있다.
실험 결과 분석
양자화를 적용하지 않은 모델은 요약이 명확하고 주요 정보를 잘 전달하는 반면, 양자화가 더 많이 적용 될수록 중요한 키워드(제미나이, 애플 인텔리전스) 들이 누락 되는 것을 알 수 있습니다.
하지만 전체적인 요약 결과의 내용은 크게 다르지 않았습니다.
실험 5: 작문
프롬프트
"더운 여름날의 산책"에 대한 짧은 글을 작성해주세요.
- 원본 모델 생성 결과
- 햇살이 뜨겁게 내리쬐는 여름날, 시원한 바람이 거리 사이로 스며드는 듯 희망을 주었다. 녹슨 햇빛 아래 굽어져 있는 나무들의 그늘은 짧은 휴식을 선물하는 쉼터였다. 길을 따라 걷는 사람들은 땀을 흘리며 여름의 열기를 감당하고 있었다. 아이들은 웃으며 물놀이를 즐기고, 노약자들은 그늘 아래 앉아 시원한 차를 마시며 여유를 즐겼다. 따스한 햇살이 피부를 감싸듯, 뜨거운 공기는 숨을 가쁘게 만들었다. 하지만 그 뜨거움 속에도, 사람들의 웃음소리와 생동감 넘치는 분위기는 여름날의 산책을 특별하게 만들었다.
- 8비트 양자화 생성 결과
- 햇살이 뜨겁게 내리쬐는 여름날, 시원한 바람이 불어오는 숲길을 걸으며 숨이 가쁘게 되었다. 잎사귀는 녹색으로 물들어 햇빛을 받으며 반짝이며, 그 사이로 드리운 그림자는 시원한 휴식을 제공했다. 땀이 흘러나오는 몸을 쿨하게 해주는 숲의 향기는 깊이 숨을 들이쉬며 몸과 마음을 편안하게 해주었다. 멀리서 들리는 새들의 노랫소리와 풀밭에 앉아 햇살을 쬐는 곤충들의 활동은 여름날의 싱그러움을 더욱 돋보이게 했다. 따스한 햇살과 시원한 바람이 몸을 감싸는 듯한 느낌은 잊고 싶지 않은 여름날의 산책이었다.
- 4비트 양자화 생성 결과
- 햇살이 쏟아지는 더운 여름날, 숨이 막힐 듯 뜨거운 공기가 펼쳐져 있었다. 나무 잎사귀는 얇게 펼쳐져 햇빛을 가리며, 잔잔한 바람은 녹색의 숲을 흔들었다. 햇살이 반짝이는 흙길을 따라 나아가는 것은 즐거운 일이었다. 땀이 흘러내리는 몸은 여름의 뜨거움을 느꼈지만, 푸른 하늘과 싱그러운 나무들은 마음을 편안하게 해주었다. 가끔씩 멈춰서 깊게 숨을 들이쉬며, 햇살을 즐기고, 푸른 하늘을 바라보았다. 어느새 숲 속의 맑은 시원한 샘물이 보였다. 샘물을 마시며 잠시 쉬었다. 더운 여름날의 산책은 몸과 마음을 깨끗이 씻어주는 즐거움이었다.
실험 결과 분석
원본 모델은 풍부한 묘사를 바탕으로 글이 작성된 반면 양자화가 적용 된 모델은 문장의 표현이 비교적 단순합니다.
또한 8bit 양자화 보다 4bit 양자화 모델이 생성되는 문장의 길이가 대체로 짧아지는 편입니다.
결론
LLM에 양자화를 적용하면, 모델의 계산 효율성이 향상되고 메모리 요구량이 줄어들지만, 세부적인 표현력이나 특정 정보의 처리 능력에서 저하가 발생할 수 있습니다.
단순한 문장 생성 및 기본적인 의미 전달에는 큰 영향을 미치지 않으나, 고유명사나 구체적인 정보 처리에서 문제가 생길 수 있으며, 복잡한 문장 생성 능력이나 풍부한 묘사 능력은 모델 양자화의 정도에 따라 제한될 수 있습니다.
따라서 양자화는 모델의 경량화가 중요한 상황에서 유용할 수 있지만, 고정밀 답변 생성이 요구되는 작업에서는 신중하게 적용해야 할 필요가 있습니다.
다음에는 라틴계열 언어와 비라틴계열 언어간의 성능 저하를 직접 비교해, 한국어와 영어간의 성능 저하 차이에 대해서도 알아보도록 하겠습니다!
Reference
- https://data-newbie.tistory.com/992
'딥러닝 > LLM' 카테고리의 다른 글
RAG(Relevance-Augmented Generation): LLM의 한계를 넘는 새로운 접근 (0) | 2024.10.09 |
---|---|
LLM을 활용한 지식 증류: sLLM 성능 최적화 실험 (3) | 2024.09.01 |
[논문리뷰] How Does Quantization Affect Multilingual LLMs? (0) | 2024.08.12 |
LLM의 다양한 SFT 기법: Full Fine-Tuning, PEFT (LoRA, QLoRA) (0) | 2024.08.06 |
Supervised Fine-tuning: customizing LLMs (0) | 2024.08.06 |