AI: 멀티태스크 학습

ㅁ 멀티태스크 학습

ㅇ 정의:
하나의 모델이 여러 개의 관련된 작업(Task)을 동시에 학습하도록 하는 기법으로, 각 작업 간의 공통 표현을 학습하여 성능과 효율성을 높인다.

ㅇ 특징:
– 파라미터 공유를 통해 모델 크기 및 학습 비용 절감
– 작업 간 상관관계를 활용하여 일반화 성능 향상
– 데이터가 부족한 작업에 다른 작업의 정보가 도움을 줄 수 있음

ㅇ 적합한 경우:
– 여러 작업이 유사한 입력 형태와 특징을 가지는 경우
– 개별 작업 데이터셋이 작아 데이터 효율성을 높이고자 하는 경우

ㅇ 시험 함정:
– 작업 간 충돌로 인해 오히려 성능이 저하될 수 있음
– 모든 작업이 반드시 이득을 보는 것은 아님

ㅇ 시험 대비 “패턴 보기” 예시:
O: “멀티태스크 학습은 파라미터 공유를 통해 데이터 효율성을 높인다.”
X: “멀티태스크 학습은 항상 모든 작업의 성능을 향상시킨다.”

================================

1. Multi-Task Training

ㅇ 정의:
하나의 신경망 구조에서 여러 작업의 손실 함수를 동시에 최적화하는 학습 방식.

ㅇ 특징:
– 공유 레이어와 작업별 전용 레이어를 병행 사용
– 각 작업의 손실을 합산하거나 가중합하여 최적화
– 학습 효율성 증대 및 오버피팅 방지 가능

ㅇ 적합한 경우:
– 여러 작업이 입력 데이터의 특징을 공유하는 경우
– 리소스 제약 환경에서 다기능 모델이 필요한 경우

ㅇ 시험 함정:
– 손실 함수 가중치 설정이 부적절하면 특정 작업이 과도하게 지배
– 모든 작업이 동일한 학습 속도를 가지지 않음

ㅇ 시험 대비 “패턴 보기” 예시:
O: “Multi-Task Training은 하나의 모델로 여러 작업을 동시에 학습할 수 있다.”
X: “Multi-Task Training은 각 작업의 파라미터를 전혀 공유하지 않는다.”

================================

2. Gradient Surgery

ㅇ 정의:
멀티태스크 학습에서 각 작업의 그래디언트가 서로 충돌할 때, 이를 조정하여 학습 안정성과 성능을 높이는 기법.

ㅇ 특징:
– 그래디언트 간 내적을 계산하여 부정적인 영향을 줄이는 방식
– 대표적으로 PCGrad(Projected Conflicting Gradient) 알고리즘이 있음
– 충돌 완화로 모든 작업의 손실 감소를 유도

ㅇ 적합한 경우:
– 작업 간 목표가 상충하여 그래디언트 방향이 반대인 경우
– 멀티태스크 학습에서 특정 작업의 성능 저하가 심한 경우

ㅇ 시험 함정:
– 모든 충돌이 반드시 해롭지는 않음
– 잘못된 투영은 학습 속도를 늦출 수 있음

ㅇ 시험 대비 “패턴 보기” 예시:
O: “Gradient Surgery는 작업 간 그래디언트 충돌을 완화한다.”
X: “Gradient Surgery는 손실 함수의 값을 직접 조정한다.”

================================

3. Task Balancing Techniques

ㅇ 정의:
멀티태스크 학습에서 각 작업의 중요도와 학습 속도를 균형 있게 조정하는 기법.

ㅇ 특징:
– 손실 함수 가중치 동적 조정(Dynamic Weight Averaging, Uncertainty Weighting 등)
– 작업별 학습률 조정 가능
– 불균형 데이터셋이나 난이도 차이를 보완

ㅇ 적합한 경우:
– 특정 작업이 빠르게 수렴하거나 과도하게 손실을 지배하는 경우
– 작업별 데이터 크기나 난이도가 크게 다른 경우

ㅇ 시험 함정:
– 잘못된 가중치 조정은 일부 작업 성능 저하 유발
– 모든 상황에서 동적 가중치가 최적은 아님

ㅇ 시험 대비 “패턴 보기” 예시:
O: “Task Balancing Techniques는 작업 간 손실 비중을 조정한다.”
X: “Task Balancing Techniques는 각 작업의 데이터 양을 동일하게 만든다.”

ㅁ 추가 학습 내용

멀티태스크 학습에서 중요한 개념 정리

1. Negative Transfer(부정 전이)
– 정의: 멀티태스크 학습에서 한 작업의 학습이 다른 작업의 성능을 저해하는 현상
– 사례: 관련성이 낮거나 상충하는 목표를 가진 작업을 함께 학습할 때 특정 작업의 정확도가 단일 학습보다 낮아지는 경우

2. Hard Parameter Sharing vs Soft Parameter Sharing
– Hard Parameter Sharing: 여러 작업이 동일한 은닉층 파라미터를 공유, 출력층만 분리
– Soft Parameter Sharing: 각 작업이 별도의 모델 파라미터를 가지되, 파라미터 간 유사성을 유지하도록 제약(정규화 등) 적용

3. Multi-Objective Optimization과의 관계
– 멀티태스크 학습은 여러 작업의 손실 함수를 동시에 최소화하는 문제로, 이는 다중 목적 최적화 문제와 동일한 수학적 틀로 해석 가능

4. 작업 간 상관관계 측정 방법
– Pearson Correlation: 두 작업 출력 또는 특성 간 선형 상관 정도 측정
– Mutual Information: 두 변수 간 공유 정보량을 측정, 비선형 관계도 포착 가능

5. Gradient Surgery 기법
– PCGrad: 작업 간 기울기 충돌을 완화하기 위해 기울기를 투영하여 조정
– GradNorm: 작업별 손실 변화율을 균형 있게 유지하도록 기울기 크기 조정
– MGDA(Multiple Gradient Descent Algorithm): 모든 작업 손실을 동시에 줄이는 공통 하강 방향 탐색

6. Task Balancing Techniques
– Dynamic Weight Averaging(DWA): 최근 손실 변화율에 따라 작업 가중치를 동적으로 조정
– Uncertainty Weighting: 각 작업의 예측 불확실성을 기반으로 가중치 설정
– GradNorm: 손실과 기울기 크기를 모니터링하며 작업 간 학습 속도를 균형화
– 적용 시 주의점: 데이터 스케일 차이, 손실 함수의 단위 차이, 초기 학습 단계의 불안정성 등을 고려해야 함

답글 남기기

Your email address will not be published. Required fields are marked *.

*
*