Continual Learning
지속적 학습(continual learning)이 AI가 잊지 않고 새로운 기술을 습득할 수 있게 하는 방법을 배우십시오. 주요 전략을 탐구하고 엣지 AI를 위해 Ultralytics YOLO26 모델을 업데이트하십시오.
지속적 학습(CL)은 평생 학습(lifelong learning)이라고도 불리며, 인공지능 모델이 이전에 학습한 정보를 잊지 않으면서 시간이 지남에 따라 새로운 작업을 순차적으로 학습하거나 새로운 지식을 습득하는 능력을 의미합니다. 모델을 고정된 데이터셋으로 한 번만 학습시킨 후 배포하는 전통적인 머신러닝 파이프라인과 달리, 지속적 학습은 새로운 환경에 적응하고 새로운 경험을 통해 지속적으로 학습하는 인간의 능력을 모방합니다. 이 분야의 주요 과제는 파괴적 망각(catastrophic forgetting)을 극복하는 것입니다. 이는 새로운 데이터로 신경망을 학습시킬 때, 이전 작업에 최적화된 가중치가 덮어쓰여져 이전 작업에 대한 성능이 급격히 저하되는 현상을 말합니다.
Link to this section지속적 학습이 중요한 이유#
역동적인 현실 세계에서 데이터 분포는 좀처럼 고정되어 있지 않습니다. 예를 들어, 자율주행 차량의 시각 인식 시스템은 초기 학습 과정에서 습득한 기본적인 교통 표지판 인식 능력을 잃지 않으면서, 계절 변화, 새로운 교통 법규, 또는 다른 도시 환경에 적응해야 합니다. 누적 데이터셋을 기반으로 한 전통적인 처음부터 재학습하기는 스토리지 제한이나 개인정보 보호 문제로 인해 종종 비용이 많이 들고 비효율적입니다. 지속적 학습은 모델이 점진적으로 업데이트될 수 있도록 하여 자원이 제한적인 엣지 AI 애플리케이션에서 더욱 효율적이고 확장 가능한 모델을 구축하도록 지원합니다.
Link to this section실제 애플리케이션 사례#
- 로보틱스 및 자율 시스템: 비정형 환경에 배치된 로봇은 새로운 물체를 조작하거나 새로운 지형을 탐색해야 합니다. 지속적 학습(Continual learning)을 통해 로봇은 특정 제조 작업을 숙달한 후, 시스템을 완전히 재설정할 필요 없이 다른 제품 라인을 처리하는 법을 배울 수 있으며, 이를 통해 유연한 인더스트리 4.0 혁신 파이프라인을 효과적으로 지원합니다.
- 의료 영상 진단: 새로운 질병이 발생하거나 영상 촬영 프로토콜이 변경됨에 따라 의료 데이터도 진화합니다. 방사선 전문의를 보조하는 AI 시스템은 지속적 학습을 활용하여 X-레이에서 발견되는 새로운 바이러스 변종과 같은 새로운 병리를 통합하는 동시에, 폐렴이나 골절과 같은 일반적인 질환을 탐지하는 높은 정확도를 유지할 수 있습니다. 이러한 역량은 확립된 프로토콜에서 환자의 안전을 저해하지 않으면서 최신 의료 진단 상태를 유지하는 데 매우 중요합니다.
Link to this section지속적 학습의 핵심 전략#
파괴적 망각을 완화하기 위해 연구자들은 여러 전략을 사용합니다. **정규화 방법(Regularization methods)**은 이전 작업에서 식별된 중요한 가중치가 크게 변경되지 않도록 손실 함수에 제약을 추가합니다. **재생 방법(Replay methods)**은 이전 데이터의 작은 하위 집합을 저장하거나 생성형 AI를 사용하여 합성 샘플을 생성한 뒤, 학습 중에 새로운 데이터와 혼합합니다. 마지막으로, **매개변수 격리(parameter isolation)**는 모델의 특정 매개변수 하위 집합을 각 작업에 할당하여, 새로운 작업에 대한 업데이트가 이전 작업에 최적화된 매개변수를 방해하지 않도록 합니다. 2024년과 2025년의 최근 발전은 어떤 특징이 일반적이고 어떤 특징이 작업 특정적인지 더 잘 식별하기 위해 비전 언어 모델을 활용하는 데 초점을 맞추고 있습니다.
Link to this section지속적 학습 대 전이 학습#
지속적 학습을 전이 학습과 구분하는 것이 중요합니다. 전이 학습에서는 사전 학습된 모델이 새로운 특정 작업을 해결하기 위한 시작점 역할을 하며, 원래 작업에서의 성능은 보통 중요하지 않습니다. 목표는 대상 도메인에서의 성능을 극대화하는 것입니다. 반면, 지속적 학습의 목표는 새로운 작업과 이전의 모든 작업 모두에서 좋은 성능을 내는 것입니다. 마찬가지로, 능동적 학습이 학습을 위해 라벨링할 가장 유익한 데이터 포인트를 선택하는 데 초점을 맞춘다면, 지속적 학습은 시간이 지남에 따라 모델 자체를 업데이트하는 과정에 초점을 맞춥니다.
Link to this sectionYOLO 모델 업데이트#
진정한 지속적 학습을 위해서는 전문적인 아키텍처 조정이 필요하지만, 사용자는 이전 데이터의 버퍼와 혼합된 새로운 데이터로 모델을 미세 조정(fine-tuning)함으로써 이 워크플로우를 시뮬레이션할 수 있습니다. Ultralytics Platform은 이러한 데이터셋 관리와 모델 버전 관리를 간소화합니다. 다음은 Python API를 사용하여 모델을 업데이트하는 방법에 대한 예시입니다:
from ultralytics import YOLO
# Load a model previously trained on 'dataset_v1.yaml'
model = YOLO("yolo26n-v1.pt")
# Train the model on a new dataset containing new and old samples
# This helps mitigate catastrophic forgetting by "replaying" old data
results = model.train(
data="dataset_v2_combined.yaml",
epochs=50,
imgsz=640,
lr0=0.001, # Lower learning rate for fine-tuning
)Link to this section도전 과제 및 향후 방향#
발전에도 불구하고 지속적 학습은 여전히 활발한 연구 분야입니다. 새로운 것을 배우는 능력(가소성)과 오래된 것을 유지하는 능력(안정성)의 균형을 맞추는 최적의 가소성-안정성 딜레마를 결정하는 것은 어렵습니다. 또한 이러한 시스템을 평가하려면 순방향 전이(새로운 작업에 대한 학습 속도)와 역방향 전이(이전 작업에 미치는 영향)를 모두 고려하는 강력한 성능 지표가 필요합니다. 파운데이션 모델이 점점 더 커짐에 따라, LoRA(Low-Rank Adaptation)와 같은 효율적인 지속적 적응 방식은 전체 재학습 없이 대규모 시스템을 사용자 정의하는 데 매우 중요해지고 있습니다.






