Upload
others
View
3
Download
0
Embed Size (px)
Citation preview
1
Continual Lifelong Learning and Catastrophic Forgetting
2019.07.26
이지윤
22
Prerequisite
시작하기 앞서
33
Prerequisite- Terminology
Task
“풀고 싶은 문제”
머신러닝 알고리즘이 수행해야 하는 작업
예. MNIST digit classification
Biking sharing regression
Iris data clustering
https://www.slideshare.net/ssuser62b35f/180808-dynamically-expandable-network
44
Prerequisite- Terminology
Single-task & Multi-task
Single-task learning: 단일 task를 학습하는 방법론
Multi-task learning: 여러 개의 task를 동시에 학습하는 방법론
• 지식 전이(knowledge transfer)*를 통해 성능이 향상되는 것을 목표
https://www.slideshare.net/ssuser62b35f/180808-dynamically-expandable-network
Task간 지식이 서로 공유되고, 전이되어 단일 task만을 사용하는 것 보다 성능이 향상되는 현상
<Single-task learning> <Multi-task learning>
Co-learn all tasks simulatneouslyLearn each task independently
55
Prerequisite- Terminology
Multi-task learning
Multi-task learning: 여러 개의 task를 동시에 학습하는 방법론
• Task정의에 따라 문제 상황 광범위
1. 개와 고양이 사진을 구분하는 task / 늑대와 호랑이를 구분하는 task / 나비와 벌을 구분하는 task
2. 웨이퍼 사진 정보(X)로 웨이퍼의 두께(Y1), 웨이퍼의 너비(Y2)를 예측하는 task
3. 웨이퍼 사진 정보(X1)와 웨이퍼 계측 정보(X2)로 웨이퍼의 수명(Y)을 예측하는 task
66
Prerequisite- Terminology
https://www.slideshare.net/ssuser62b35f/180808-dynamically-expandable-network
<Offline learning> <Online learning>
Offline learning & Online learning
Offline-learning: 한번에 주어지는 데이터로 모델 학습(=Batch learning)
Online-learning: 데이터가 subset(mini-batch)형태로 순차적으로 주어지는 상황에서 모델 학습하되, 학습에 사용된
subset데이터는 저장이 불가능하여 더 이상 사용할 수 없음
• 어느 시점에 얼마만큼의 데이터로 모델을 업데이트 시키는지 정의하는 것이 중요
77
Online Multi-task learning: Task가 순차적으로 들어오는 상황에서 모든 task를 잘 풀이하는 모델
Online Learning + Multi-task Learning
task가 순차적으로 주어지는 상황에서 모델 학습하되, 이전 task학습에 사용된 subset데이터는 저장이 불가능하여
더 이상 사용할 수 없음
최종적으로 t시점에서는 1,2,..t-1,t의 task 모두 잘 수행해야함
<Task 1> <Task 2> <Task 3>
Task1 training data set 사용 불가 Task1 training data set 사용 불가
Task2 training data set 사용 불가
Prerequisite- Terminology
88
Transfer learning(=domain adaption): 학습 데이터가 적은 target task를 잘 수행하기 위해 기존에 잘 훈련된
모델(source model)활용
미세조정(fine-tuning): 기존에 훈련된 모델에 추가된 데이터로 파라미터 업데이트
일반적으로 target task를 푸는 single task learning 문제 시나리오
Prerequisite- Terminology
Source task Target task
Source model Target model
Transfer learned knowledge
9
Continual Lifelong Learning and Catastrophic Forgetting
2019.07.26
이지윤
1010
Continual Lifelong Learning
1111
Contents
1. Introduction
2. Continual Lifelong Learning
- Online Multi-task learning
- Catastrophic Forgetting
3. Research approaches
- Memory Replay
- Regularization approach
- Dynamic Architecture
4. Life Learning with Dynamically Expandable Networks
5. Conclusions
1212
Introduction- ‘Classical’ approach to machine learning
“강아지랑 고양이 분류해줘라”
1313
고양이
강아지
Introduction- ‘Classical’ approach to machine learning
Supervised learning: 데이터에 대한 정답이 주어진 상태에서 학습
문제: 강아지와 고양이 사진 분류
데이터: Kaggle Dogs vs. Cats (강아지 12000건, 고양이 12000건)
모델: 강아지와 고양이 사진을 분류하는 Deep neural networks
과정:
https://blog.goodaudience.com/artificial-neural-networks-explained-436fcf36e75, 목충협 세미나 자료
𝑤1𝑤2𝑤3𝑤4
𝑤𝑖
𝑤𝑖+1𝑤𝑖+2
𝑤𝑗
𝑤𝑗+1
𝑤𝑗+2𝑤𝑗+3𝑤𝑗+4
𝑤𝑖+3
𝑤𝑖+4
𝑥𝑡𝑟𝑎𝑖𝑛_1, 𝑦1 = ( , 고양이)
𝑥𝑡𝑟𝑎𝑖𝑛_2, 𝑦2 = ( , 강아지)강아지데이터 셋
고양이데이터 셋
1414
Introduction- ‘Classical’ approach to machine learning
Supervised learning: 데이터에 대한 정답이 주어진 상태에서 학습
문제: 강아지와 고양이 사진 분류
데이터: Kaggle Dogs vs. Cats (강아지 12000건, 고양이 12000건)
모델: 강아지와 고양이 사진을 분류하는 Deep neural networks
과정:
실험데이터
𝑥test_1, ? = ( , ? )
𝑥test_2, ? = ( , ? )
https://blog.goodaudience.com/artificial-neural-networks-explained-436fcf36e75, 목충협 세미나 자료
𝑤1𝑤2𝑤3𝑤4
𝑤𝑖
𝑤𝑖+1𝑤𝑖+2
𝑤𝑗
𝑤𝑗+1
𝑤𝑗+2𝑤𝑗+3𝑤𝑗+4
𝑤𝑖+3
𝑤𝑖+4
고양이
강아지(1)
1515
Introduction- ‘Classical’ approach to machine learning
Supervised learning: 데이터에 대한 정답이 주어진 상태에서 학습
문제: 강아지와 고양이 사진 분류
데이터: Kaggle Dogs vs. Cats (강아지 12000건, 고양이 12000건)
모델: 강아지와 고양이 사진을 분류하는 Deep neural networks
과정:
𝑥𝑡𝑟𝑎𝑖𝑛_1, 𝑦1 = ( , 고양이)
𝑥𝑡𝑟𝑎𝑖𝑛_2, 𝑦2 = ( , 강아지)
(2) 학습 이전에 완전한 데이터 제공
(3) 데이터와 구조가 고정적 “train_test_split(shuffle = True)”
(1) 단일 문제를 해결하고자함
https://blog.goodaudience.com/artificial-neural-networks-explained-436fcf36e75, 목충협 세미나 자료
강아지데이터 셋
고양이데이터 셋
고양이
강아지
𝑤1𝑤2𝑤3𝑤4
𝑤𝑖
𝑤𝑖+1𝑤𝑖+2
𝑤𝑗
𝑤𝑗+1
𝑤𝑗+2𝑤𝑗+3𝑤𝑗+4
𝑤𝑖+3
𝑤𝑖+4
1616
“데이터는 시간의 흐름에 따라 끊임 없이 성장한다.”
Car
SedanRoadster
Sports carConvertible
Introduction- Challenges: Incomplete, Growing Datasets
2017년도
ImageNet22,000 classes
https://www.slideshare.net/NaverEngineering/lifelong-learning-for-dynamically-expandable-networks
1717
- Challenges: Incomplete, Growing Datasets
“데이터는 시간의 흐름에 따라 끊임 없이 성장한다.”
연구의 방향이나 시장의 수요에 따라 데이터/클래스가 세분화
Car
SedanRoadster
Sports carConvertible
BMW 3 series
Hyundai Sonata
Ferrari 458 Italia
Porsche 911 TurboFerrari 458 spider
BMW Z4
Introduction
2018년도
ImageNet100,000 classes
https://www.slideshare.net/NaverEngineering/lifelong-learning-for-dynamically-expandable-networks
1818
- Challenges: Incomplete, Growing Datasets
“데이터는 시간의 흐름에 따라 끊임 없이 성장한다.”
연구의 방향이나 시장의 수요에 따라 데이터/클래스가 세분화
증감된 데이터/클래스에 따라 새로운 task 부여
Car
SedanRoadster
Sports carConvertible
2019년도
ImageNet120,000 classes
BMW 3 series
Hyundai Sonata
Ferrari 458 Italia
Porsche 911 TurboFerrari 458 spider
BMW Z4
Tesla Model S
Introduction
https://www.slideshare.net/NaverEngineering/lifelong-learning-for-dynamically-expandable-networks
1919
- Challenges: Incomplete, Growing Datasets
Introduction
X Y
안녕하세요 GREETING
한화ICT 주가 알려줘 STOCK
한화큐셀 주가 알려줘 STOCK
이지윤 사원 부서 어디야? PERSON
동작구 지역 날씨 알려줘라 NONE
아우 점심시간 왜 안오냐 NONE
Task1: 채팅 주제 분류
“데이터는 시간의 흐름에 따라 끊임 없이 성장한다.”
연구의 방향이나 시장의 수요에 따라 데이터/클래스가 세분화
증감된 데이터/클래스에 따라 새로운 task 부여
2020
- Challenges: Incomplete, Growing Datasets
Introduction
X Y_1
안녕하세요 GREETING
한화ICT 주가 알려줘 STOCK
한화큐셀 주가 알려줘 STOCK
이지윤 사원 부서 어디야? PERSON
동작구 지역 날씨 알려줘라 NONE
아우 점심시간 왜 안오냐 NONE
Task1: 채팅 주제 분류
Y_2
GREETING
STOCK
STOCK
PERSON
WEATHER
REST
NONE
WEATHER
REST
PARTICLE
…
NONE
“데이터는 시간의 흐름에 따라 끊임 없이 성장한다.”
연구의 방향이나 시장의 수요에 따라 데이터/클래스가 세분화
증감된 데이터/클래스에 따라 새로운 task 부여
Task2: 세분화된 NONE 카테고리 분류
2121
- Challenges: Incomplete, Growing Datasets
Introduction
X Y_1
안녕하세요 GREETING
한화ICT 주가 알려줘 STOCK
한화큐셀 주가 알려줘 STOCK
이지윤 사원 부서 어디야? PERSON
동작구 지역 날씨 알려줘라 NONE
아우 점심시간 왜 안오냐 NONE
Task1: 채팅 주제 분류
Y_2
B_GREETING
B_COMPANY, O, O
B_COMPANY, O, O
B_PERSON, O, O, O
B_LOCATION, I, O,O
O, O, O, O
Task2: 토큰 의미 분류
“데이터는 시간의 흐름에 따라 끊임 없이 성장한다.”
연구의 방향이나 시장의 수요에 따라 데이터/클래스가 세분화
증감된 데이터/클래스에 따라 새로운 task 부여
2222
- Challenges: Incomplete, Growing Datasets
“데이터는 시간의 흐름에 따라 끊임 없이 성장한다.”
연구의 방향이나 시장의 수요에 따라 데이터/클래스가 세분화
증감된 데이터/클래스에 따라 새로운 task 부여
Introduction
http://mi.eng.cam.ac.uk/projects/segnet/tutorial.html
Task1
2323
- Challenges: Incomplete, Growing Datasets
“데이터는 시간의 흐름에 따라 끊임 없이 성장한다.”
연구의 방향이나 시장의 수요에 따라 데이터/클래스가 세분화
증감된 데이터/클래스에 따라 새로운 task 부여
Introduction
http://mi.eng.cam.ac.uk/projects/segnet/tutorial.html
Task1
Task2
Task3
Task4
Task5
2424
- Challenges: Incomplete, Growing Datasets
“데이터는 시간의 흐름에 따라 끊임 없이 성장한다.”
연구의 방향이나 시장의 수요에 따라 데이터/클래스가 세분화
증감된 데이터/클래스에 따라 새로운 task 부여
Introduction
Task1
Task2
Task3
Task4
Task5
Task10
…Online Multi-task learning:
Task가 순차적으로
들어오고,
모든 task 다 풀어야해
http://mi.eng.cam.ac.uk/projects/segnet/tutorial.html
2525
Introduction- Catastrophic forgetting
“Sky 유/무 분류해줘라”
<Task 1>
“Building 유/무 분류해줘라”
<Task 2>
2626
Task 1
문제: Sky 존재 여부
데이터: 도로 데이터 셋 (train/valid/test: 1000/200/500)
모델: Sky binary classification 인공신경망
𝑤(1) 𝑤(2)
Task 1 (Sky 존재 여부) Test Accuracy: 80%
Introduction- Catastrophic forgetting
도로데이터 셋
2727
Task 2 (Building task 새롭게 정의)
문제: Sky 뿐만 아니라 Building 존재 여부
데이터: 도로 데이터 셋 (train/valid/test: 1000/200/500)
모델: Sky binary classification, Building binary classification multi task 인공신경망
𝑤(1) 𝑤(2)
Task 1 (Sky 존재 여부)
Task 2 (Building 존재 여부) Test Accuracy: 80%
Test Accuracy: 60%
Introduction- Catastrophic forgetting
인공신경망의 미세조정(Fine tuning)방식을 통해 손쉽게
수행가능하지 않을까?!
도로데이터 셋
2828
Catastrophic forgetting(=Semantic drift, 의미 변화 현상)
새로운 task에 대해 학습하게 되면 신경망모델이 이전에 배운 task에 대해서는 네트워크가 까먹는 현상
신경망 모델이 이전 dataset으로 학습한 모델에 새로운 dataset을 학습하면 두 dataset간에 관련이 있더라도
이전 dataset에 대한 정보를 대량으로 손실
Introduction- Catastrophic forgetting
2929
Complementary Learning Systems & Plasticity and stability dilemma
배경 지식은 일반화하여 장기기억으로 저장되어 있음
새롭게 지식을 배울 때 배경지식을 활용하고, 새로운 정보(단기기억)중 중요도를 잘 판별해서 배경지식(장기기억)으로 저장
새롭게 무언가 배웠다고 해서 이전에 배운 것들을 잘 못하지 않아!
Introduction- Neurophysiological aspects
<Complementary Learning Systems (CLS) theory>
이미 인간의 뇌는 이걸 다 하고 있음!
3030
Continual Lifelong Learning
거듭되는 학습 평생 학습 증가하는 학습
Continual learning Lifelong learning Incremental learning≈ ≈
- Continual learning: 지속적으로배우고, 잘 해내자
3131
Continual Lifelong Learning
Continual learning Lifelong learning Incremental learning≈ ≈
Online multi-task learning
- Continual learning: 지속적으로배우고, 잘 해내자
Let's do everything !!
3232
Continual learning scenario
Catastrophic forgetting문제를 해결하기 위한 모델
학습에 사용된 subset데이터는 저장이 불가능하여 더 이상 사용할 수 없음 (전체 데이터로 재학습 불가능)
여러 task를 하나의 모델에 순차적으로 학습하여 최종적으로 모든 task의 수행이 가능한 모델을 학습
Continual Lifelong Learning- Continual learning
Learn++: An incremental learning algorithm for supervised neural networks(Polikar, R., Upda, L., Upda, S. S., & Honavar, V. , 2001)
Catastrophic forgetting Model capacity
Trade off
3333
Continual learning scenario
Catastrophic forgetting문제를 해결하기 위한 모델
학습에 사용된 subset데이터는 저장이 불가능하여 더 이상 사용할 수 없음 (전체 데이터로 재학습 불가능)
여러 task를 하나의 모델에 순차적으로 학습하여 최종적으로 모든 task의 수행이 가능한 모델을 학습
대표적인 접근 방법
1. Memory Replay
2. Regularization approach
3. Dynamic Architecture
Continual Lifelong Learning- Continual learning
3434
Memory Replay
학습 데이터를 나중에 사용할 수 없으니, 진짜같은 가짜 학습 데이터를 잘 생성하는 generator구축
진짜같은 가짜 학습 누적 데이터로 모델링
대표적으로 Deep generative replay(Kamra, N., Gupta, U. & Liu, Y., 2018)
Continual Lifelong Learning- Continual learning
3535
Regularization approach
네트워크의 구조는 변하지 않음
새롭게 파라미터를 업데이트할 때, 이전 task에서 중요했던 파라미터는 조금만 변경되도록 regularization term추가
대표적으로 EWC(Kirkpatrick et al., 2017)
Continual Lifelong Learning- Continual learning
Elastic Weight Consoliation(Kirkpatrick et al., 2017)
Retraining without expansion
3636
Dynamic architecture
새로운 task를 수용하기 위해 네트워크 구조를 동적으로 변경하며, catastrophic forgetting문제 완화
네트워크의 neurons 또는 layers의 개수를 증가시키고 미세조정(fine-tuning)
대표 알고리즘으로 Progressive networks
Continual Lifelong Learning- Continual learning
Progressive networks(Rusu et al., 2016)
고정 용량을 가진 새로운 sub networks를 할당하여 확장
이전 task에 대한 파라미터 업데이트 안함
task별로 미세조정된 네트워크가 유지
한계점: Catastrophic forgetting문제는 완화되지만,
학습되는 task가 증가할수록 네트워크의 복잡도는 증가
No-retraining with expansion
3737
Dynamic architecture
새로운 task를 수용하기 위해 네트워크 구조를 동적으로 변경하여 catastrophic forgetting문제 완화
네트워크의 neurons 또는 layers의 개수를 증가시키고 미세조정(fine-tuning)
대표 알고리즘으로 Progressive networks
Continual Lifelong Learning- Continual learning
모델 아키텍쳐 복잡도를 낮추자!
전 task도 나중에 들어오는 task로 더 잘 풀 수 있을듯!
새로운 task와 이전 task의 차이에 따라 네트워크 유동적으로 증가
이전 task에 구축한 파라미터도 선택적으로 학습
No-retraining with expansion
Progressive networks(Rusu et al., 2016)
3838
Dynamic architecture
새로운 task를 수용하기 위해 신경망 구조를 동적으로 변경하여 catastrophic forgetting문제 완화
네트워크의 neurons 또는 layers의 개수를 증가시키고 미세조정(fine-tuning)
네트워크 용량을 dynamic하게 확장할 수 있도록 제안한 Dynamically expandable networks
Continual Lifelong Learning- Continual learning
Dynamically expandable networks(Yoon et al., 2018)
No-retraining with expansion
Progressive networks(Rusu et al., 2016)
Partial retraining with expansion
3939
Contents
1. Introduction
2. Continual Lifelong Learning
- Online Multi-task learning
- Catastrophic Forgetting
3. Research approaches
- Regularization approach
- Complementary Learning Systems and Memory Replay
- Dynamic Architecture
4. Life Learning with Dynamically Expandable Networks
5. Conclusions
4040
Lifelong Learning with Dynamically Expandable Networks- Continual learning
4141
Goal of the DEN
Achieving scalability and efficiency in training
- 네트워크 용량이 커질수록 함께 증가하는 훈련비용(미세조정 비용) 절감
Deciding when to expand the network, and how many neurons to add
- 이전 task에서 구축한 네트워크가 새로운 task를 수행하기에 충분하지 않으면 네트워크 확장이 필요
- 언제, 얼만큼 네트워크 확장하는가에 대한 기준 정의가 중요
Preventing catastrophic forgetting
- 네트워크가 동적으로 확장되고, 이전 task들의 파라미터도 조정되어 catastrophic forgetting문제가 발생
- 이전 task들도 새롭게 구축된 네트워크에도 잘 수행하도록 네트워크 구성
Lifelong Learning with Dynamically Expandable Networks- Introduction
4242
Process overview of the DEN
1. Selective retraining
2. Dynamic network expansion
3. Network split/duplication
Lifelong Learning with Dynamically Expandable Networks- Introduction
4343
Process overview of the DEN
Sequence of T tasks, t = 1, … , t, …,T for unbounded T
training data for task t: 𝐷𝑡 = 𝑥𝑖 , 𝑦𝑖 𝑖=1𝑁𝑡
network weight tensor: 𝑊𝑡 = 𝑊l l=1𝐿
Lifelong Learning with Dynamically Expandable Networks- Introduction
4444
Selective retraining
첫번째 task학습 방법
Lifelong Learning with Dynamically Expandable Networks- model architecture
t=1
layer L
layer L-1
𝑊𝐿−1𝑡=1
𝑊𝐿𝑡=1
input layer
𝑂𝑡=11
t=1일때, L1-regularization을 이용해 weight를 sparse하게 학습
모델의 복잡도가 낮아짐, 모델 경량화 효과 overfitting방지
4545
t-1 t
Selective retraining
새로운 task와 관련된 파라미터만 선택하여 재학습
(1) t번째 task와 관련된 파라미터 탐색 (parameter selection)
(2) 탐색된 t번째 task와 관련된 파라미터만 업데이트
Lifelong Learning with Dynamically Expandable Networks- model architecture
layer L
layer L-1
𝑂𝑡−1 𝑂𝑡
L-1 layer까지 sparse weight는 고정하고, 𝑊𝐿,𝑡𝑡 파라미터만 L1-
regularization을 이용해 학습하여 t번째 task와 관련된 파라미터 탐색
계산을 통해 도출된 𝑊𝐿,𝑡𝑡 이 0이라면, t task와 관련이 없는 파라미터
𝑊𝐿−1𝑡−1
𝑊𝐿,𝑡𝑡
𝑊1𝑡−1
input layer
4646
Selective retraining
새로운 task와 관련된 파라미터만 선택하여 재학습
(1) t번째 task와 관련된 파라미터 탐색 (parameter selection)
(2) 탐색된 t번째 task와 관련된 파라미터만 업데이트
Lifelong Learning with Dynamically Expandable Networks- model architecture
계산을 통해 도출된 𝑊𝐿,𝑡𝑡 이 0이 아니라면, t task와 관련이 있는 파라미터 로
인접한 뉴런의 집합 selected subnetwork S를 구함
Subnetwork의 파라미터 𝑊𝑆𝑡를 L2-regularization을 이용해 학습
t-1 t
layer L
layer L-1
𝑂𝑡−1 𝑂𝑡
𝑊𝐿−1𝑡−1
𝑊𝑆𝑡
𝑊1𝑡−1
input layer
4747
t-1 t
Selective retraining
새로운 task와 관련된 파라미터만 선택하여 재학습
(1) t번째 task와 관련된 파라미터 탐색 (parameter selection)
(2) 탐색된 t번째 task와 관련된 파라미터만 업데이트
Lifelong Learning with Dynamically Expandable Networks- model architecture
layer L
layer L-1
𝑂𝑡−1 𝑂𝑡
𝑊𝐿−1𝑡−1
𝑊𝑆𝑡
𝑊1𝑡−1
input layer
4848
Process overview of the DEN
1. Selective retraining
2. Dynamic network expansion
3. Network split/duplication
Lifelong Learning with Dynamically Expandable Networks- Introduction
selective retraining[1]만으로는 성능이 안좋음 네트워크 확장하자
4949
Dynamic network expansion
새로운 task를 더 잘 반영할 수 있도록 네트워크 확장
(1) Selective retraining[1]한 모델이 새로운 task에 좋은 성능을 보이는지 확인
(2) 좋은 성능을 보이지 않는다면, 새로운 task난이도를 고려하여(dynamically) 네트워크 확장
Lifelong Learning with Dynamically Expandable Networks- model architecture
Loss 𝐿계산
새로운 task가 이전 task와 비슷하다면 selective retraining[1]만으로 충분
task에 대해 loss를 계산하고 임계치보다 큰 경우 네트워크 확장
t-1 t
layer L
layer L-1
𝑂𝑡−1 𝑂𝑡
𝑊𝐿−1𝑡−1
𝑊𝑆𝑡
𝑊1𝑡−1
input layer
5050
t-1 t
Dynamic network expansion
새로운 task까지 잘 반영할 수 있도록 네트워크 확장
(1) Selective retraining[1]한 모델이 새로운 task에 좋은 성능을 보이는지 확인
(2) 좋은 성능을 보이지 않는다면, 새로운 task난이도를 고려하여(dynamically) 네트워크 확장
Lifelong Learning with Dynamically Expandable Networks- model architecture
layer L
layer L-1
𝑂𝑡−1 𝑂𝑡
𝑊𝑙𝑁
k개
임의로 k개의 뉴런을 레이어 별로 추가
𝑊𝑁 is the expanded weight matrix involved with added neurons
𝑊𝑙𝑡−1
input layer
5151
t-1 t
Dynamic network expansion
새로운 task까지 잘 반영할 수 있도록 네트워크 확장
(1) Selective retraining[1]한 모델이 새로운 task에 좋은 성능을 보이는지 확인
(2) 좋은 성능을 보이지 않는다면, 새로운 task난이도를 고려하여(dynamically) 네트워크 확장
Lifelong Learning with Dynamically Expandable Networks- model architecture
layer L
layer L-1
𝑂𝑡−1 𝑂𝑡
𝑊𝑙𝑁
k개
임의로 k개의 뉴런을 레이어 별로 추가
𝑊𝑁 is the expanded weight matrix involved with added neurons
𝑊𝑙𝑡−1
input layer
5252
t-1 t
Dynamic network expansion
새로운 task까지 잘 반영할 수 있도록 네트워크 확장
(1) Selective retraining[1]한 모델이 새로운 task에 좋은 성능을 보이는지 확인
(2) 좋은 성능을 보이지 않는다면, 새로운 task난이도를 고려하여(dynamically) 네트워크 확장
Lifelong Learning with Dynamically Expandable Networks- model architecture
layer L
layer L-1
𝑂𝑡−1 𝑂𝑡
𝑊𝑙𝑁
k개
𝑊𝑙𝑡−1
input layer
임의로 k개의 뉴런을 레이어 별로 추가
Group sparsity regularization을 이용해 추가된 k개의 뉴런 중 필요 없는
뉴런은 제거, 제거 되지 않은 뉴런도 sparse하게 만듦
where g∈ 𝑔 is a group defined on the incoming weights for each neuron
Group sparsity regularization
5353
t-1 t
Dynamic network expansion
새로운 task까지 잘 반영할 수 있도록 네트워크 확장
(1) Selective retraining[1]한 모델이 새로운 task에 좋은 성능을 보이는지 확인
(2) 좋은 성능을 보이지 않는다면, 새로운 task난이도를 고려하여(dynamically) 네트워크 확장
Lifelong Learning with Dynamically Expandable Networks- model architecture
layer L
layer L-1
𝑂𝑡−1 𝑂𝑡
𝑊𝑙𝑁
k개
𝑊𝑙𝑡−1
input layer
임의로 k개의 뉴런을 레이어 별로 추가
Group sparsity regularization을 이용해 추가된 k개의 뉴런 중 필요 없는
뉴런은 제거, 제거 되지 않은 뉴런도 sparse하게 만듦
where g∈ 𝑔 is a group defined on the incoming weights for each neuron
Group sparsity regularization
𝐴
5454
t-1 t
Dynamic network expansion
새로운 task까지 잘 반영할 수 있도록 네트워크 확장
(1) Selective retraining[1]한 모델이 새로운 task에 좋은 성능을 보이는지 확인
(2) 좋은 성능을 보이지 않는다면, 새로운 task난이도를 고려하여(dynamically) 네트워크 확장
Lifelong Learning with Dynamically Expandable Networks- model architecture
layer L
layer L-1
𝑂𝑡−1 𝑂𝑡
𝑊𝑙𝑁
k개
𝑊𝑙𝑡−1
input layer
임의로 k개의 뉴런을 레이어 별로 추가
Group sparsity regularization을 이용해 추가된 k개의 뉴런 중 필요 없는
뉴런은 제거, 제거 되지 않은 뉴런도 sparse하게 만듦
where g∈ 𝑔 is a group defined on the incoming weights for each neuron
Group sparsity regularization
뉴런(노드)선택
5555
t-1 t
Dynamic network expansion
새로운 task까지 잘 반영할 수 있도록 네트워크 확장
(1) Selective retraining[1]한 모델이 새로운 task에 좋은 성능을 보이는지 확인
(2) 좋은 성능을 보이지 않는다면, 새로운 task난이도를 고려하여(dynamically) 네트워크 확장
Lifelong Learning with Dynamically Expandable Networks- model architecture
layer L
layer L-1
𝑂𝑡−1 𝑂𝑡
𝑊𝑙𝑁
k개
𝑊𝑙𝑡−1
input layer
임의로 k개의 뉴런을 레이어 별로 추가
Group sparsity regularization을 이용해 추가된 k개의 뉴런 중 필요 없는
뉴런은 제거, 제거 되지 않은 뉴런도 sparse하게 만듦
where g∈ 𝑔 is a group defined on the incoming weights for each neuron
Group sparsity regularization
뉴런(노드)선택
5656
t-1 t
Dynamic network expansion
새로운 task까지 잘 반영할 수 있도록 네트워크 확장
(1) Selective retraining[1]한 모델이 새로운 task에 좋은 성능을 보이는지 확인
(2) 좋은 성능을 보이지 않는다면, 새로운 task난이도를 고려하여(dynamically) 네트워크 확장
Lifelong Learning with Dynamically Expandable Networks- model architecture
layer L
layer L-1
𝑂𝑡−1 𝑂𝑡
𝑊𝑙𝑁
k개
𝑊𝑙𝑡−1
input layer
임의로 k개의 뉴런을 레이어 별로 추가
Group sparsity regularization을 이용해 추가된 k개의 뉴런 중 필요 없는
뉴런은 제거, 제거 되지 않은 뉴런도 sparse하게 만듦
where g∈ 𝑔 is a group defined on the incoming weights for each neuron
Group sparsity regularization
뉴런(노드)선택파라미터
선택
5757
t-1 t
Dynamic network expansion
새로운 task까지 잘 반영할 수 있도록 네트워크 확장
(1) Selective retraining[1]한 모델이 새로운 task에 좋은 성능을 보이는지 확인
(2) 좋은 성능을 보이지 않는다면, 새로운 task난이도를 고려하여(dynamically) 네트워크 확장
Lifelong Learning with Dynamically Expandable Networks- model architecture
layer L
layer L-1
𝑂𝑡−1 𝑂𝑡
input layer
5858
Process overview of the DEN
1. Selective retraining
2. Dynamic network expansion
3. Network split/duplication
Lifelong Learning with Dynamically Expandable Networks- Introduction
Selective retraining[1]한 모델이 task t에 대해
좋은 성능인지 확인하고, 아니라면 네트워크 확장
5959
Process overview of the DEN
1. Selective retraining
2. Dynamic network expansion
3. Network split/duplication
Lifelong Learning with Dynamically Expandable Networks- Introduction
Selective retraining[1]과정에서 이전 task와 너무 많이 바뀐
파라미터들을 떼어서 새로운 hidden unit 생성
6060
Process overview of the DEN
1. Selective retraining
2. Dynamic network expansion
3. Network split/duplication
Lifelong Learning with Dynamically Expandable Networks- Introduction
catastrophic forgetting 발생
방지 하면서 학습하자Capacity에 초점
6161
Network split/duplication
Catastrophic forgetting 발생 방지: 이전 task들 학습한 것 까먹지 말자
(1) 각 뉴런에서 catastrophic forgetting이 발생했는지 확인
(2) Catastrophic forgetting발생한 뉴런 복제 후 학습
Lifelong Learning with Dynamically Expandable Networks- model architecture
t-1 t
layer L
layer L-1
𝑂𝑡−1 𝑂𝑡
𝑊𝐿−1𝑡
𝑊𝐿𝑡
𝑊1𝑡
input layer
t-1
layer L
layer L-1
𝑂𝑡−1
𝑊𝐿−1𝑡−1
𝑊𝐿𝑡−1
𝑊1𝑡−1
input layer
6262
Network split/duplication
Catastrophic forgetting 발생 방지: 이전 task들 학습한 것 까먹지 말자
(1) 각 뉴런에서 catastrophic forgetting이 발생했는지 확인
(2) Catastrophic forgetting발생한 뉴런 복제 후 학습
Lifelong Learning with Dynamically Expandable Networks- model architecture
t-1 t
layer L
layer L-1
𝑂𝑡−1 𝑂𝑡
𝑊𝐿−1𝑡
𝑊𝐿𝑡
𝑊1𝑡
input layer
t-1
layer L
layer L-1
𝑂𝑡−1
𝑊𝐿−1𝑡−1
𝑊𝐿𝑡−1
𝑊1𝑡−1
input layer
𝑃𝑖𝑡 = 𝑤𝑖
𝑡 −𝑤𝑖𝑡−1
2
Selective retraining[1]과정에서 파라미
터가 너무 많이 변했는지 확인
L2-distance값이 임계값 이상인지 확인
𝑖 is hidden unit
6363
Network split/duplication
Catastrophic forgetting 발생 방지: 이전 task들 학습한 것 까먹지 말자
(1) 각 뉴런에서 catastrophic forgetting이 발생했는지 확인
(2) Catastrophic forgetting발생한 뉴런 복제 후 학습
Lifelong Learning with Dynamically Expandable Networks- model architecture
t-1 t
layer L
layer L-1
𝑂𝑡−1 𝑂𝑡
𝑊𝐿−1𝑡
𝑊𝐿𝑡
𝑊1𝑡
input layer
t-1
layer L
layer L-1
𝑂𝑡−1
𝑊𝐿−1𝑡−1
𝑊𝐿𝑡−1
𝑊1𝑡−1
input layer
𝑃𝑖𝑡 = 𝑤𝑖
𝑡 −𝑤𝑖𝑡−1
2
Selective retraining[1]과정에서 파라미
터가 너무 많이 변했는지 확인
L2-distance값이 임계값 이상인지 확인
𝑖 is hidden unit
6464
Lifelong Learning with Dynamically Expandable Networks- model architecture
t-1 t
layer L
layer L-1
𝑂𝑡−1 𝑂𝑡
𝑊𝐿−1𝑡
𝑊𝐿𝑡
𝑊1𝑡
input layer
t-1
layer L
layer L-1
𝑂𝑡−1
𝑊𝐿−1𝑡−1
𝑊𝐿𝑡−1
𝑊1𝑡−1
input layer
Network split/duplication
Catastrophic forgetting 발생 방지: 이전 task들 학습한 것 까먹지 말자
(1) 각 뉴런에서 catastrophic forgetting이 발생했는지 확인
(2) Catastrophic forgetting발생한 뉴런 복제 후 학습
6565
Network split/duplication
Catastrophic forgetting 발생 방지: 이전 task들 학습한 것 까먹지 말자
(1) 각 뉴런에서 catastrophic forgetting이 발생했는지 확인
(2) Catastrophic forgetting발생한 뉴런 복제 후 재학습
Lifelong Learning with Dynamically Expandable Networks- model architecture
t-1 t
𝑂𝑡−1 𝑂𝑡
layer L
layer L-1
input layer
6666
Network split/duplication
Catastrophic forgetting 발생 방지: 이전 task들 학습한 것 까먹지 말자
(1) 각 뉴런에서 catastrophic forgetting이 발생했는지 확인
(2) Catastrophic forgetting발생한 뉴런 복제 후 재학습
Lifelong Learning with Dynamically Expandable Networks- model architecture
t-1 t
𝑂𝑡−1 𝑂𝑡
layer L
layer L-1
input layer
𝜆작으면, t task 학습 더 많이𝜆크면, 기존 파라미터 유지
6767
Process overview of the DEN
1. Selective retraining
2. Dynamic network expansion
3. Network split/duplication
Lifelong Learning with Dynamically Expandable Networks- model architecture
6868
Baselines and our models
Lifelong Learning with Dynamically Expandable Networks- Experiments
Models
1 DNN-STL Base DNN, trained for each task separately
2 DNN-MTL Base DNN, trained for all tasks at once
3 DNN Base DNN, using l2-regularizations
4 DNN-L2 Base DNN, using l2-regularizations between 𝑤𝑖𝑡, 𝑤𝑖
𝑡−1
5 DNN-EWC DNN trained with elastic weight consolidation for regularization
6 DNN-Progressive DNN trained with progressive nets
7 DEN Dynamically expandable networks
DNN: We use a two-layer network with 312-128 neurons with ReLU activations
6969
Datasets
Lifelong Learning with Dynamically Expandable Networks- Experiments
Models
1 MNIST-Variation- 10 handwritten digits are rotated to arbitrary angles and has noise.
- Each task to be one-versus-rest binary classification.
2 CIFAR-100- 100 generic object classes images.
- Each task binary classification on each class.
3 AWA- 50 animals images(dimensionality is reduced to 500 by PCA).
- Each task binary classification on each class.
해당 논문 실험에서 task는 각각 class가 늘어나는 상황을 가정
7070
Average Per-task Performance
DEN이 대체적으로 좋은 성능을 보이며, MNIST경우 STL보다 더 좋은 성능을 보임
Progressive nets와의 비교를 통해 동적 네트워크 확장이 성능에도 효과적인 것을 확인
Lifelong Learning with Dynamically Expandable Networks- Experiments
7171
Catastrophic forgetting experiment on the MNIST-variation dataset
한 task에 대해 다 시점 성능을 살펴본 결과 성능이 유지되는지 확인
Lifelong Learning with Dynamically Expandable Networks- Experiments
7272
Performance over capacity
DEN이 적은network capacity 대비 성능이 우수한 것을 확인
Lifelong Learning with Dynamically Expandable Networks- Experiments
7373
Continual learning experiments scenario
1. 순차적으로 들어오는 task마다 X도메인은 같고, Y만 다른 경우 (same domain, other target/class)
2. 순차적으로 들어오는 task마다 X도메인만 다르고 Y는 같은 경우 (other domain, same target)
3. 순차적으로 들어오는 task마다 X도메인, Y 둘다 다른 경우 (other domain, other target)
Continual Lifelong Learning- Experiments
&Preventing
Catastrophic forgetting
7474
Continual learning
문제에서 가정하는 시나리오가 많음
- Task가 스트림 형태로 새롭게 들어옴
- 모든 task를 잘 풀고 싶음(catastrophic forgetting방지)
- 이전 task의 데이터는 다시 사용할 수 없음
- 그러나, 실시간 task가 중요한 자율주행자동차, 강화학습 도메인에서 중요한 이슈
실제 연구들은 task의 가정을 복잡하게 정의하지 않음
- binary classification task가 일반적
- class의 증가로 해석이 가능
Continual Lifelong Learning- Conclusions
7575
Continual learning VS Meta learning
Meta learning
- 풀고자 하는 문제는 하나, 근데 데이터가 부족
- 여러 지식들(multi-task)을 데이터가 적은 문제를 풀기 위해 해결방안으로 활용
Continual learning
- 풀고자 하는 문제가 점점 늘어남, 데이터가 부족한 상황을 가정하지 않음
- 점점 늘어나는 여러 문제들(multi-task)을 모두 잘 푸는 것이 목표
- 그 과정에서 생기는 catastrophic forgetting, capacity문제를 해결하는게 주요 이슈
Continual Lifelong Learning- Conclusions
7676
Continual Lifelong Learning- Conclusion
7777
Thank you
7878
Appendix
7979
Timestamped inference
각 시점마다 뉴런의 정보를 저장하여 inference단계에서는 해당 시점 이후에 확장된 네트워크 구조는 제외한
모델에 대해 inference
Lifelong Learning with Dynamically Expandable Networks- model architecture
t-1 t
𝑂𝑡−1 𝑂𝑡
layer L
layer L-1
input layer