본 포스팅은 패스트캠퍼스 환급 챌린지 참여를 위해 작성하였습니다.
*_1. 학습 인증샷 4장 이상 포함
*_① 오늘자 날짜, 공부 시작 시각 포함 사진 1장

② 오늘자 날짜, 공부 종료 시각 포함 사진 1장

③ 1개 클립 수강 인증 사진 (강의장 목록 캡쳐, 강의 내용이 담긴 수강화면이 보이지 않도록) 1장

④ 학습 인증샷 1장 이상 (ex. 필기 촬영, 작업물, 등)

2. 학습 후기 700자 이상 (공백 제외)
양자화와 정확도 손실
- 원래 32비트 (또는 16비트)로 표현되던 가중치를 4비트, 8비트로 바꾸면,, 세밀한 수치가 반올림되거나 범위 제한을 받음
양자화의 선택 기준
- 성능 vs 메모리 트레이드오프
- 문제의 복잡성과 가용 자원에 따라 최적의 양자화 레벨이 달라짐
- 양자화 수준 (8비트 vs. 4비트)을 문제 종류에 맞게 결정해야 함
- 실제 테스트를 통해 “어느정도 손실을 감수해도 괜찮은지” 확인 후 적용 권장
- 8비트 : 대부분 일반적인 작업에 적합한 균형점
- 4비트 : 메모리 제약이 심각하고 일정수준의 성능 감소를 감수할 수 있을 때
가중치라는 표현
- AI 모델 내부
- AI 모델은 수십억 개의 “가중치”라는 숫자들로 구성됨
- AI 모델은 수많은 행렬로 구성되어져 있는데 각 행렬 안의 숫자들을 의미 (파라미터, 가중치라 불림)
- 이 숫자들이 AI모델의 “지식”을 담고 있음
- AI 모델에서의 각 숫자는 보통 32비트나 16비트로 저장됨
양자화 적용 방식
- 8비트 : 각 숫자는 256가지 값 중 하나만 가질 수 있음
- 4비트 : 각 숫자는 16가지 값 중 하나만 가질 수 있음
- 실제 과정
- AI 모델에 있는 모든 가중치 숫자들의 값의 범위 파악 (예 : -2에서 +2)
- 이 범위를 비트 수에 따라 나눔 (4비트면 16구간)
- 각 원래 가중치 값을 가장 가까운 구간 값으로 변환
- 저장할 때는 값 자체가 아닌 구간 번호만 저장 (4비트면 이제 16개의 값만 가질 수 있음)
가중치 분포
- 모델 내 가중치들이 실제로 어떤 범위와 분포 (예: -2~+2)에 몰려 있는지
- 실제로는 가중치가 특정 범위 (예: -1.5~+1.5)에 집중되는 경우가 많음
- 단순 균등 분할보다는 가중치가 몰린 구간을 세분화하는 방식을 사용 (분포고려)
NF4
- 양자화할 때 가중치 분포에 맞춰 정밀도 할당을 최적화
- 동일한 4비트 양자화라도 더 나은 성능 유지 가능 (성능 손실 최소화)
- 일상생활 비유 : 버스 좌석 배치
- 출퇴근 시간대에는 사람이 많은 역 주변에 버스 정류장을 더 촘촘히 배치하고, 사람이 적은 외곽에는 정류장 간격을 더 넓게 하는 것과 비슷한 원리
양자화를 통한 크기 감소
- 16비트 -> 50% 감소 -> 1.2-1.5x
- 8비트 -> 75% 감소 -> 1.5-2x
- 4비트 -> 87.5% 감소 -> 2-3x
QLoRA
- LoRA와 양자화를 함께 쓰면(=QLoRA), 큰 모델을 4비트로 줄이고, 필요한 부분만 LoRA로 학습 -> 훨씬 적은 자원으로 튜닝 가능
- 독립적 사용 시
- 양자화 : 메모리 절약, 정확도 감소
- LoRA : 효율적 학습, 원본 모델 크기 제약
- 결합 사용 시 (QLoRA)
- 4비트 모델 + LoRA 어댑터
- 크기와 학습 효율성 모두 개선
- 24GB 그래픽카드로도 70B 모델 튜닝 가능
- 양자화된 기본 모델 : 기본 AI 모델을 4비트로 양자화하여 크기 축소 및 메모리 요구량 8배 감소
- 효율적인 학습: 축소된 모델에 LoRA기법 적용
NF4 양자화와 LoRA의 결합
- NF4와 LoRA를 함께 사용하면, 4비트 양자화에 따른 오차를 LoRA 단계에서 보정 가능
- AI 모델에 최적화된 4비트 형식
- 일반적인 4비트 보다 AI모델에 더 적합한 특별한 형식
- AI 모델의 숫자들이 주로 따르는 분포에 맞게 설계됨
일반 4비트 양자화 : 균등분할 (예: -2.0 ~ +2.0구간을 16단계로 등분)
NF4 (NormalFloat 4): 모델 가중치의 분포 (대체로 평균 근처에 몰림)를 고려해 구간을 배분
- 작은 영역에서는 더 세밀하게, 극단값 영역은 상대적으로 크게 분할
이중 양자화
- 양자화에 필요한 정보도 추가로 압축. 즉, 양자화 자체에 필요한 상수들도 추가로 양자화
- 기본 양자화로 가중치가 이미 압축되었더라도, (실제 계산 시 종종 복원이 필요) 복원에 필요한 스케일이나 제로포인트 등의 보정 값은 보통 높은 정밀도로 저장됨
- 이 값들이 전체 메모리 사용량에 상당한 영향을 줄 수 있는데, 이를 개선하기 위해 이들 보정 값 역시 낮은 비트(예: 4비트, 8비트)로 다시 양자화 함
url : https://abit.ly/lisbva
'스타트업 투자 > 데이터 + 테크' 카테고리의 다른 글
| 패스트캠퍼스 환급챌린지 35일차 : 페이지드 어텐션과 vLLM 강의 후기 (1) | 2025.05.05 |
|---|---|
| 패스트캠퍼스 환급챌린지 34일차 : SFT와 DPO 강의 후기 (0) | 2025.05.04 |
| 패스트캠퍼스 환급챌린지 32일차 : LoRA 튜닝 강의 후기 (0) | 2025.05.02 |
| 패스트캠퍼스 환급챌린지 31일차 : 사전학습과 파인튜닝 강의 후기 (1) | 2025.05.01 |
| 패스트캠퍼스 환급챌린지 30일차 : 인공지능에서의 학습이란 강의 후기 (0) | 2025.04.30 |
댓글