연속 학습의 목적은 연속 작업에서 지속적으로 지식을 축적하는 인간의 능력을 모방하는 것입니다. 주요 과제는 새로운 작업을 계속 학습한 후에도 이전에 학습한 작업의 수행을 유지하는 방법, 즉파국적인 망각을 방지하는 것입니다. (파괴적 망각) . 연속 학습과 다중 작업 학습의 차이점은 후자는 모든 작업을 동시에 얻을 수 있고 모델은 동시에 모든 작업을 학습할 수 있다는 점입니다. 연속 학습에서는 작업이 하나씩 나타나며 모델은 오직 작업에 대한 지식을 배우고 새로운 지식을 배우는 과정에서 오래된 지식을 잊지 마십시오.
서던캘리포니아대학교와 Google Research는 지속적인 학습을 해결하기 위한 새로운 방법을 제안했습니다.채널별 경량 재프로그래밍(CLR): 고정 작업 변경되지 않은 백본에 훈련 가능한 경량 모듈을 추가함으로써 , 각 레이어 채널의 기능 맵이 다시 프로그래밍되어 다시 프로그래밍된 기능 맵이 새로운 작업에 적합하게 됩니다. 이 훈련 가능한 경량 모듈은 전체 백본의 0.6%만을 차지합니다. 각각의 새로운 작업은 자체 경량 모듈을 가질 수 있습니다. 이론적으로는 치명적인 망각 없이 무한한 새로운 작업을 지속적으로 학습할 수 있습니다. 이 논문은 ICCV 2023에 게재되었습니다.
보통 연속 학습을 해결하는 방법은 크게 정규화 기반 방법, 동적 네트워크 세 가지 범주로 나뉩니다. 방법 및 재생 방법.
본 글에서 제안하는 CLR 방식은 동적 네트워크 방식이다. 아래 그림은 전체 프로세스의 흐름을 나타냅니다. 연구원은 작업 독립적인 불변 부분을 공유 작업별 매개변수로 사용하고 작업별 매개변수를 추가하여 채널 기능을 다시 코딩합니다. 동시에 각 작업에 대한 레코딩 매개변수의 훈련 양을 최소화하기 위해 연구자는 모델에서 커널의 크기를 조정하고 백본에서 작업별 지식까지 채널의 선형 매핑을 학습하여 레코딩을 구현하기만 하면 됩니다. 지속적인 학습에서는 각각의 새로운 작업을 훈련하여 경량 모델을 얻을 수 있습니다. 이 경량 모델에는 훈련 매개변수가 거의 필요하지 않지만 훈련해야 하는 총 매개변수 수는 대형 모델에 비해 매우 적습니다. 작고 가벼운 모델마다 좋은 결과를 얻을 수 있습니다
지속 학습은 데이터 스트림에서 학습하는 문제, 즉 특정 순서로 새로운 작업을 학습하는 데 중점을 둡니다. 이전 작업의 망각을 피하면서 획득한 지식이므로 치명적인 망각을 방지하는 방법은 지속적인 학습 연구의 주요 문제입니다. 연구자들은 다음 세 가지 측면을 고려합니다.
채널 기반 경량 녹음먼저 고정 백본을 작업 공유 구조로 사용합니다. 이는 상대적으로 다양한 데이터 세트(ImageNet-1k, Pascal VOC) 또는 의미 라벨 없이 에이전트 작업을 학습하는 자기 지도 학습 모델(DINO, SwAV)입니다. 다른 연속 학습 방법(예: 무작위로 초기화된 고정 구조를 사용하는 SUPSUP, 첫 번째 작업에서 학습한 모델을 백본으로 사용하는 CCLL 및 EFT)과 달리 CLR에서 사용하는 사전 학습된 모델은 다양한 시각적 기능을 제공할 수 있지만 이러한 시각적 기능 기능에는 다른 작업을 기록하기 위한 CLR 레이어가 필요합니다. 특히 연구원들은채널별 선형 변환을 사용하여 원본 컨볼루션 커널에서 생성된 특징 이미지를 다시 인코딩했습니다.
사진은 CLR의 구조를 보여줍니다. CLR은 모든 컨벌루션 신경망에 적합합니다. 일반적인 컨벌루션 신경망은 컨벌루션 계층, 정규화 계층 및 활성화 계층을 포함하는 Conv 블록(잔차 블록)으로 구성됩니다.
연구원들은 먼저 사전 훈련된 백본을 수정한 다음 각 고정 콘볼루션 블록의 콘볼루션 레이어 뒤에 채널형 경량 재프로그래밍 레이어(CLR 레이어)를 추가하여 고정 콘볼루션 커널 이후의 기능을 개선했습니다. 채널과 같은 선형 변화.
그림 X가 주어지면 각 컨볼루션 커널에 대해 특징 맵을 얻을 수 있습니다. 연구원은CLR 컨볼루션 커널을 동일한 변경 커널로 초기화했습니다(즉, 2D 컨볼루션 커널의 경우 중간 매개변수만 1이고 나머지는 0임).
이렇게 하면 초기 과정에서 원래의 고정 백본이 생성될 수 있기 때문입니다. 훈련 기능은 CLR 레이어를 추가한 후 모델에서 생성된 기능과 동일합니다. 동시에 매개변수를 저장하고 과적합을 방지하기 위해 연구원들은 컨볼루션 커널 뒤에 CLR 레이어를 추가하지 않을 것입니다. CLR 레이어는 컨볼루션 커널 뒤에만 작동합니다. CLR 이후 ResNet50의 경우 증가된 훈련 가능한 매개변수는 고정된 ResNet50 백본에 비해 0.59%에 불과합니다.
지속적인 학습을 위해 학습 가능한 CLR 매개변수와 학습 불가능한 백본을 추가한 모델은 각 작업을 차례로 학습할 수 있습니다. 테스트할 때 연구원들은 테스트 이미지가 어떤 작업에 속하는지 모델에 알려줄 수 있는 작업 예측자가 있고 고정 백본과 해당 작업별 CLR 매개변수가 최종 예측을 할 수 있다고 가정합니다. CLR은 절대 매개변수 격리(각 작업에 해당하는 CLR 레이어 매개변수가 다르며 공유 백본은 변경되지 않음) 특성을 가지므로 CLR은 작업 수에 영향을 받지 않습니다
실험 결과
데이터 세트: 연구원들은 이미지 분류를 주요 작업으로 사용했습니다. 실험실에서는 약 180만 개의 이미지와 1,584개의 카테고리로 구성된 53개의 이미지 분류 데이터 세트를 수집했습니다. 이 53개 데이터 세트에는 객체 인식, 스타일 분류, 장면 분류, 계산 및 의료 진단의 5가지 분류 목표가 포함되어 있습니다.
연구원들은 대략 3가지 범주로 나눌 수 있는 13개의 기준선을 선택했습니다.
동적 네트워크: PSP, SupSup, CCLL, Confit, EFTs
Replay: ER, DERPP
두 번째 실험: 모든 작업을 완료한 후 평균 정확도 학습
아래 그림은 모든 작업을 학습한 후 모든 방법의 평균 정확도를 보여줍니다. 평균 정확도는 연속 학습 방법의 전반적인 성능을 반영합니다. 각 작업마다 난이도가 다르기 때문에 새로운 작업이 추가되면 추가된 작업이 쉬운지 어려운지에 따라 전체 작업의 평균 정확도가 오르거나 내릴 수 있습니다.
먼저 매개변수와 계산 비용을 분석해 보겠습니다
지속적인 학습을 위해서는 더 높은 평균 정확도를 얻는 것이 매우 중요하지만 좋은 알고리즘은 최대화를 희망합니다. 추가 요구 사항을 줄입니다. 네트워크 매개변수 및 계산 비용. "새 작업에 대한 추가 매개변수 추가"는 원래 백본 매개변수 양의 백분율을 나타냅니다. 본 글에서는 SGD의 계산비용을 단위로 사용하며, 다른 방식의 계산비용은 SGD의 비용에 따라 정규화하였다.
재작성된 콘텐츠: 다양한 백본 네트워크의 영향 분석
이 문서의 방법은 상대적으로 다양한 데이터 세트에 대한 지도 학습 또는 자기 지도 학습을 사용하여 사전 학습된 모델을 학습합니다. 작업과 무관한 불변 매개변수로 사용됩니다. 다양한 사전 훈련 방법의 영향을 탐색하기 위해 이 문서에서는 다양한 데이터 세트와 작업을 사용하여 훈련된 4가지 작업 독립적인 사전 훈련 모델을 선택했습니다. 지도 학습의 경우, 연구원들은 이미지 분류를 위해 ImageNet-1k 및 Pascal-VOC에서 사전 훈련된 모델을 사용했고, 자기 지도 학습을 위해 연구원들은 DINO와 SwAV라는 두 가지 방법으로 얻은 사전 훈련된 모델을 사용했습니다. 다음 표는 네 가지 방법을 사용한 사전 훈련된 모델의 평균 정확도를 보여줍니다. 모든 방법의 최종 결과가 매우 높다는 것을 알 수 있습니다. (참고: Pascal-VOC는 상대적으로 작은 데이터 세트이므로 정확도가 상대적으로 낮습니다. 낮은 점) 사전 훈련된 다양한 백본에 강력합니다.
위 내용은 학습 효율성 최적화: 0.6%의 추가 매개변수를 사용하여 기존 모델을 새로운 작업으로 전환의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!