위키득계정 ↗
기술

MoCo

MoCo기술
영문명
Momentum Contrast
대표 저장 구조
표현 키의 큐
두 인코더
쿼리 인코더와 키 인코더
키 갱신
쿼리 가중치의 이동평균
MoCo는 이전 배치의 표현을 큐에 보관하고 모멘텀 인코더로 키 표현의 변화를 완만하게 만들어 대조 학습을 수행하는 방법이다. 비교할 키의 수를 현재 미니배치 크기와 별도로 정할 수 있다.

쿼리와 키의 대응

한 이미지의 서로 다른 증강 뷰를 쿼리와 양성 키로 인코딩한다. 쿼리는 자신의 양성 키와 가까워지고 큐의 다른 키와 구별되도록 대조 손실로 학습한다. 큐는 여러 배치에서 얻은 키를 제공하므로 현재 배치만으로 비교 집합을 구성할 필요가 없다.

큐의 순환

키 네 개 A,B,C,D를 보관하는 큐에 새 배치 E,F를 넣는다고 하자. 용량을 유지하면서 가장 오래된 둘을 빼면 C,D,E,F가 남는다. 이 예처럼 새 키를 추가하고 오래된 키를 제거해 비교 집합을 점진적으로 바꾼다.

인코더의 완만한 변화

키 인코더 가중치는 θ키←mθ키+(1−m)θ쿼리로 갱신한다. 키 값이 10이고 쿼리 값이 6, m=0.95라면 새 키 값은 9.8이다. 쿼리는 역전파로 학습하고 키는 이동평균으로 변하므로 서로 다른 배치에서 저장한 표현 사이의 급격한 변화를 줄이려 한다.

사전 크기와 일관성

큰 큐는 더 많은 비교 대상을 주지만 오래된 표현과 현재 인코더 사이의 차이도 고려해야 한다. 모멘텀 계수와 큐 길이는 함께 검토할 설정이다. 서로 다른 이미지가 같은 의미 범주일 수도 있으므로 음성 쌍의 구별을 실제 의미 분류와 동일하게 해석하지 않는다.

관련 문서

BYOL / SimCLR / 대조 예측 코딩 / 큐 / 역전파 / 지수 이동평균