AI 시스템 구축: 지속학습/재학습
ㅁ 지속학습/재학습
ㅇ 정의:
과거에 학습한 지식을 유지하면서 새로운 데이터나 환경 변화에 맞춰 지속적으로 모델을 업데이트하는 학습 방식.
ㅇ 특징:
– 데이터가 순차적으로 도착하는 환경에서 유용
– 기존 모델의 가중치를 기반으로 추가 학습 진행
– Catastrophic Forgetting 방지 기술 필요
ㅇ 적합한 경우:
– 실시간 데이터 스트리밍 처리
– IoT 센서 데이터 분석
– 사용자 맞춤 추천 시스템의 장기 운영
ㅇ 시험 함정:
– 지속학습과 단순 재학습(모델 완전 재훈련) 혼동
– 온라인 학습과의 차이점 구분 필요
ㅇ 시험 대비 “패턴 보기” 예시:
O: “기존 지식을 유지하며 새로운 데이터에 적응하는 학습 방식”
X: “이전 데이터를 모두 폐기하고 처음부터 학습하는 방식”
================================
1. Continual Learning
ㅇ 정의:
모델이 시간에 따라 들어오는 데이터에 맞춰 지속적으로 학습하며 기존 지식을 잃지 않도록 하는 학습 패러다임.
ㅇ 특징:
– 데이터 분포 변화에 대응 가능
– Catastrophic Forgetting 방지 전략 필요
– 메모리 및 연산 효율성 중요
ㅇ 적합한 경우:
– 장기간 운영되는 AI 서비스
– 변화하는 환경의 로봇 제어
ㅇ 시험 함정:
– Continual Learning = Online Learning 으로 단순화하는 오류
– ‘모델 재학습’과 혼동
ㅇ 시험 대비 “패턴 보기” 예시:
O: “데이터가 순차적으로 제공되어도 이전 지식을 유지하는 학습”
X: “모든 데이터셋을 한 번에 학습하는 방식”
================================
2. Incremental Learning
ㅇ 정의:
새로운 클래스나 데이터가 추가될 때 기존 모델을 확장하여 학습하는 기법.
ㅇ 특징:
– 클래스 증분 학습(Class-Incremental)과 데이터 증분 학습(Data-Incremental)로 구분
– 기존 데이터 재사용 없이도 모델 확장 가능
ㅇ 적합한 경우:
– 제품 카테고리 확장 시 이미지 분류 모델 업데이트
– 음성 인식 단어 사전 확장
ㅇ 시험 함정:
– Incremental Learning = Continual Learning 으로 동일시하는 오류
– 단순 Fine-tuning과 혼동
ㅇ 시험 대비 “패턴 보기” 예시:
O: “새로운 클래스가 추가될 때 기존 지식을 유지하며 학습하는 방식”
X: “기존 클래스를 모두 재학습해야 하는 방식”
================================
3. Catastrophic Forgetting
ㅇ 정의:
신경망이 새로운 데이터 학습 시 이전에 학습한 정보를 급격히 잃어버리는 현상.
ㅇ 특징:
– 순차 학습 환경에서 빈번히 발생
– 파라미터 업데이트가 이전 지식에 부정적 영향
ㅇ 적합한 경우:
– 개념 이해 및 방지 기법 학습 필요
– EWC, Replay Buffer, Knowledge Distillation 등과 연계
ㅇ 시험 함정:
– ‘데이터 손실’과 혼동
– 단순 과적합 문제로 오해
ㅇ 시험 대비 “패턴 보기” 예시:
O: “새로운 학습으로 인해 이전 지식이 손실되는 현상”
X: “모델이 새로운 데이터에 적응하지 못하는 현상”
================================
4. Replay Buffer
ㅇ 정의:
과거 데이터를 일부 저장해두었다가 새로운 데이터 학습 시 함께 재사용하는 메모리 구조.
ㅇ 특징:
– Catastrophic Forgetting 완화
– 저장 용량 제한, 샘플링 전략 필요
– 강화학습과 지속학습 모두에서 활용
ㅇ 적합한 경우:
– 메모리 제약이 있는 장치에서 효율적 학습
– 샘플 다양성 유지 필요 시
ㅇ 시험 함정:
– 전체 데이터셋을 항상 저장하는 것으로 오해
– 배치 학습 전용으로만 이해
ㅇ 시험 대비 “패턴 보기” 예시:
O: “과거 데이터를 일부 저장해 재학습에 활용하는 구조”
X: “과거 데이터를 전혀 사용하지 않는 학습 방식”
ㅁ 추가 학습 내용
추가 학습 정리
1. Continual Learning 주요 접근법과 특징
– Regularization-based: 기존 지식을 유지하기 위해 가중치 변화에 제약을 주는 방식. 예) EWC(Elastic Weight Consolidation), LwF(Learning without Forgetting). 장점은 추가 메모리 필요가 적고 기존 데이터 없이도 학습 가능. 단점은 과거 데이터 복잡성을 완벽히 반영하기 어려움.
– Replay-based: 과거 데이터를 일부 저장해 재학습에 활용. 장점은 기존 데이터 분포를 직접 반영 가능. 단점은 메모리 사용량 증가와 개인정보 이슈 가능.
– Parameter Isolation-based: 새로운 태스크마다 별도의 파라미터 공간을 사용. 장점은 간섭 최소화로 망각 방지 효과 큼. 단점은 모델 크기 증가와 확장성 문제.
2. Incremental Learning의 Class Imbalance 문제와 해결 전략
– 문제: 새로운 클래스 데이터가 과거 클래스보다 많아지면 모델이 새로운 클래스에 편향됨.
– 해결 전략: Balanced Fine-tuning(각 클래스별 데이터 수를 맞춰 재학습), 데이터 리샘플링, 가중치 조정 등.
3. Catastrophic Forgetting 방지 기법
– EWC: 과거 태스크에서 중요한 가중치의 변화에 큰 패널티를 부여. 수학적으로는 Fisher Information Matrix를 사용해 각 파라미터 중요도를 추정하고, 중요한 파라미터 변경 시 손실 함수에 추가 항을 부여.
– Knowledge Distillation: 이전 모델의 출력 분포를 현재 모델이 모방하도록 학습해 과거 지식을 유지.
4. Replay Buffer의 샘플링 전략과 메모리 관리
– Reservoir Sampling: 스트리밍 데이터에서 균등 확률로 샘플 선택해 버퍼 유지.
– Prioritized Experience Replay: 중요도가 높은 샘플을 더 자주 재사용.
– 메모리 최적화: 데이터 압축, 중요도 기반 저장, 클래스별 균형 유지.
5. Online Learning, Batch Learning, Continual Learning 비교
– Online Learning: 데이터가 순차적으로 도착하며 즉시 모델 업데이트. 메모리 사용 적고 실시간성 높음.
– Batch Learning: 모든 데이터를 모아 한 번에 학습. 정확도 높지만 새로운 데이터 반영이 느림.
– Continual Learning: 데이터가 순차적으로 제공되며 과거 지식을 유지하면서 학습. 망각 방지 기법 필요.
6. 실무 적용 사례
– 자율주행: 도로 환경 변화에 따른 지속적 모델 업데이트.
– 금융 사기 탐지: 새로운 사기 패턴 반영.
– 개인화 추천: 사용자 취향 변화에 따라 추천 모델 업데이트.
7. 시험 대비 팁
– 각 용어를 단순 정의뿐 아니라 접근법 간 차이점과 공통점을 비교하는 표 작성 연습.
– 장단점, 적용 사례, 메커니즘을 함께 이해해 서술형과 비교형 문제에 대비.