- 메타러닝
· 기존 학습 네트워크를 여러개로 하고 그것을 관리할 네트워크로 구성된다.
- "Learning To Learn" 이라고 알려져 있는 Meta-learning은 보통 3개 정도의 접근 방식이 있다.
(metric 기반의) efficient distance metric을 학습하는 방식
(model 기반의) external/internal memory를 통한 (recurrent) network을 사용하는 방식
(optimization 기반의) fast learning을 위한 model parameter를 최적화하는 방식
[출처] http://m.itdaily.kr/news/articleView.html?idxno=101297
[기고] 인공지능 기술의 의사결정 과정을 밝혀낸다는 것
- 이주호 에이아이트릭스(AITRICS) 리서치팀장
인공 신경망은 정말 사람의 뇌에 가까워졌다고 말할 수 있을까?
적어도 사람처럼 의사 결정 과정에 대한 해석이 가능한지의 관점에서 본다면 답은 ‘아니오’일 것이다.
인공 신경망을 포함한 대부분의 인공지능 기술들은 정답을 도출해내는 과정을 설명하기 어렵다. 수많은 양의 학습 데이터와 계산 자원으로 만들어낸 거대하고 복잡한 모델 속에서 어떤 일이 벌어지고 있는지 정확하게 알 수 없다. 인공지능 알고리즘의 결과가 아무리 정확하더라도, 마치 ‘블랙박스’처럼 가려진 그 결론 도출 과정을 설명할 수 없다면 누가 이 결과를 신뢰할 수 있겠는가?
에이아이트릭스(AITRICS)는 인공지능의 해석 가능성을 높이고 신뢰도를 향상시키기 위하여 AI가 어떻게 결과 값을 도출했는지 확인할 수 있도록 딥러닝 모델의 의사결정 과정을 해석하는 ‘해석 모듈(Interpretation module)’과, 결과에 대한 불확실성을 계산하여 신뢰도를 제공하는 ‘베이지안 뉴럴 네트워크(Bayesian neural networks)’ 기술을 도입했다.
▲ <위> 기존에 존재하던 방법으로, 두 네트워크 사이의 지식 전이가 채널의 중요도에 대한 고려 없이 일정하게 이루어짐
<아래> 에이아이트릭스 메타트랜스퍼(AITRICS metatransfer) 방법으로, 메타 네트워크 f와 g는 채널의 중요도에 따라 두 네트워크의 레이어 사이에 전달할 지식의 양을 결정한다. 화살표의 너비는 전달되는 지식의 양을 나타낸다.
(출처: 논문 Learning what and where to transfer, ICML 2019)
인간은 과거의 경험으로부터 현재 당면한 문제를 해결할 방법을 이끌어내는 능력을 보유하고 있다. 인공지능 모델에서도 이와 유사한 기술이 있는데, 바로 ‘전이 학습 (transfer learning)’이라는 기술이다.
딥 네트워크는 일반적으로 많은 양의 학습 데이터와 충분한 학습 시간을 필요로 하지만, 현실 세계의 많은 태스크들이 적은 양의 학습 데이터로 인한 과적합(overfitting) 현상을 겪는다. 전이 학습은 이러한 경우에 학습 데이터가 충분한 다른 태스크들로부터 지식을 전이시켜 데이터가 부족한 태스크의 학습을 돕는 기술이라고 할 수 있다. 다만 일반적인 전이 학습 기술은 구체적으로 어떤 태스크의 학습 데이터가 어떠한 방법으로 전이되는지 해석하기 까다롭다는 단점이 있다.
에이아이트릭스(AITRICS)에서는 이러한 전이 학습에 해석 가능성을 부여하기 위해 ‘메타 러닝(meta learning) 방법론’을 제안했다. 이는 특정 태스크를 풀기 위해 어떠한 태스크에서 얼마만큼의 지식을 끌어와야 하는지, 또 그런 지식들이 현재 문제를 풀기 위한 딥 네트워크의 어떠한 파라미터를 최적화하는 데 주로 사용되어야 하는지를 학습하는 방법론으로, 결과의 근거를 유추하여 해석을 가능하게 하며 전이 학습의 효율성을 증대시켜 예측 성능을 큰 폭으로 향상시킨다.
▲ 모델의 확신 정도를 보여주는 신뢰성 다이어그램. ECE는 Expected Calibration Error이며, 모델의 신뢰도와 실제 정확도 사이의 가중 평균 격차를 나타낸다. 기존의 ‘Attention 모델’은 눈금 조정이 잘못된 네트워크를 제공하는 반면, 에이아이트릭스(AITRICS)의 ‘Uncertainty-aware Attention 모델’은 눈금 조정이 제대로 이루어진 네트워크를 제공한다. 이렇게 정확하게 교정된 네트워크는 모델의 예측 확신 정도를 통해 결과 사용 여부를 결정하여 신뢰할 수 있는 선택을 할 수 있도록 한다.
(출처: 논문 Uncer-tainty-Aware Attention for Reliable Interpretation and Prediction, NeurIPS 2018)
에이아이트릭스(AITRICS)는 인공지능 모델의 의사 결정 과정이 확률 분포로 주어지는 ‘베이지안 뉴럴 네트워크’ 기술을 적극 활용하여 시계열 데이터에서 불확실성을 고려한 의사 결정을 할 수 있는 ‘Uncertainty-aware attention mechanism’을 제안했다. 모델이 결과에 대한 확신이 없다면 “모르겠다”고 말할 수 있음을 의미한다.
특히 이 기술은 특정 의사 결정 과정이 어떤 요인으로부터 주로 영향을 받았는지를 알 수 있고 그 결과의 불확실성을 함께 제공하여, 해석 가능성과 신뢰도가 생명인 의료 문제에 유용하게 활용될 수 있다.
<저작권자 © 아이티데일리 무단전재 및 재배포금지>
Meta Networks
Tsendsuren Munkhdalai, Hong YuPublished 2017Computer Science, Medicine, MathematicsProceedings of machine learning research
Neural networks have been successfully applied in applications with a large amount of labeled data. However, the task of rapid generalization on new concepts with small training data while preserving performances on previously learned ones still presents a significant challenge to neural network models. In this work, we introduce a novel meta learning method, Meta Networks (MetaNet), that learns a meta-level knowledge across tasks and shifts its inductive biases via fast parameterization for… CONTINUE READING
Figure 1. Overall architecture of Meta Networks.
Figure 2. A layer augmented MLP
| Illustration of meta-network decomposition. The developmental networks X = [x 1 , x 2 , · · · , x T ] are a sequence of brain networks at different ages (indexed from 1 to T). The meta-network decomposition method decomposes X into a small number of non-overlapped meta-networks U = [u 1 , u 2 , · · · ], whose dynamic weight over time is indicated by the covarying trajectories V = [v 1 , v 2 , · · · ]. Each meta-network (e.g., u 1 ) represents a distinctive network connection pattern. Each covarying trajectory (e.g., v 1 ) reveals the dynamic contribution of the corresponding meta-network with the passing of time.
[출처] https://talkingaboutme.tistory.com/entry/DL-Meta-Learning-Learning-to-Learn-Fast
[DL] Meta-Learning: Learning to Learn Fast
"Learning To Learn" 이라고 알려져 있는 Meta-learning은 몇몇 training 예제를 통해서 모델로 하여금, 새로운 기술을 배우거나, 새로운 환경에 빠르게 적응할 수 있도록 설계하는 것을 나타낸다. 보통 3개 정도의 접근 방식이 있다.
(metric 기반의) efficient distance metric을 학습하는 방식
(model 기반의) external/internal memory를 통한 (recurrent) network을 사용하는 방식
(optimization 기반의) fast learning을 위한 model parameter를 최적화하는 방식
Learner and Meta-Learner
meta-learning을 바라보는 또다른 관점은 model update하는 과정을 두가지 단계로 나누는 것이다.
Classifier fθ는 "learner" model인데, 주어진 task를 수행할 수 있도록 학습된 상태이다.
한편, optimizer gϕ는 주어진 support set S를 가지고, learner model의 parameter를 update하는 방법을 학습하게 된다.
(θ=gϕ(θ,S))
그러면 final optimization step에서는 θ와 ϕ를 최대화할 수 있도록 update하는 것이 필요하게 된다.
Metric-Based Approach
Metric-based meta-learning의 근본적인 개념은 (k-NN classifier나 k-means clustering과 같은) nearest neighbors algorithm과 kernel density estimation과 유사하다. 알려진 label y에 대한 predicted probability는 support set sample들의 label에 대한 weighted sum과 같다. 이 때 weight는 kernel function kθ를 통해서 구할 수 있는데, 이 값은 두 개의 data sample간에 similarity 정도를 나타내는 것이다.
Convolutional Siamese Neural Network
그림 2. few-shot image classification을 위한 convolutional siamese neural network의 구조도
Matching Networks (Vinyals et al, 2016)
그림 3. Matching Network의 구조도
Relational Network (RN) (Sung et al, 2018)
그림 4. 하나의 query에 대한 5-way 1-shot problem에 대한 Relation Network 구조도
Prototypical Networks (Snell, Swersky & Zemel, 2017)
그림 5. Few-shot과 Zero-shot 상황에서의 Prototypical Networks
Model-Based Approach
Model-based meta-learning은 Pθ(y|x)와 같은 형식에서 어떠한 가정을 삽입하지 않는다. 대신에 fast-learning에 특화된 model의 영향을 많이 받는데, 이때 model은 몇번의 training step만 가지고도 network parameter를 빠르게 학습할 수 있는 형태를 나타낸다. 보통 이렇게 parameter를 빠르게 구하는 방식은 내부 구조를 통해서 얻을 수 있거나 또다른 meta-learner 모델을 통해서 제어가 된다.
Memory-Augmented Neural Networks (MANN)
그림 7. Meta-learning에 활용하기 위한 MANN의 구성
Meta Networks (Munkhdalai & Yu, 2017)
그림 9. MetaNet 구조
Optimization-Based Approach
Deep learning model은 gradient에 대한 backpropagation을 통해서 학습한다. 하지만 이런 gradient-based optimization은 적은 수의 training sample을 다루기 위해서 만들어진 것이 아닐뿐더러, 적은 optimization step내에서 converge되지 않는다. Optimization algorithm을 수정해서 적은 수의 example만 가지고 model이 잘 학습할 수 있는 방법이 있을까? 그것이 바로 optimization-based approach가 적용된 meta-learning algorithm이 지향하는 목표이다.
LSTM Meta-Learner
그림 11. LSTM Meta-Learner 학습 알고리즘
Model-Agnostic Meta-Learning (MAML) (Finn et al, 2017)
그림 13. MAML algorithm의 일반적인 형태
First-Order MAML (FOMAML)
위에서 설명한 meta-optimization step은 second derivative의 영향을 많이 받는다. 미분을 두번 해야 하기 때문에 computation power가 많이 필요한데 이를 줄이기 위해서, MAML의 수정된 형태는 second derivative를 생략하고, 조금더 더 간단하고, cost가 많이 필요하지 않는 형태로 제시되었는데, 이를 First-Order MAML (FOMAML)이라고 한다.
Reptile (Nichol, Achiam& Schulman, 2018)
Reptile은 다음 과정을 반복적으로 수행한다.
1.Task를 samling한다.
2.Multiple Gradient Descent step을 통해 task를 학습한다.
3.새로운 parameter를 얻을 수 있게끔 model weight를 움직인다.
그림 14. Reptile Algorithm의 batch 형태
Reptile vs FOMAML
결론을 내자면, MAML과 Reptile 모두 같은 goal을 가지고 optimize하는 것을 지향하며, gradient update가 아래의 세개의 항으로 근사됬을 때, (A에 의해서) 좋은 task performance를 낼수 있고, (B에 의해서) 좋은 generalization을 보여줄 수 있다.
사실 원저자 관점에서는 위의 식 중 생략된 항인 O(α2)이 parameter learning시 큰 영향을 줄 수 있다고 생각하는 것 같다. 하지만 위에서 설명한 대로 FOMAML이 완전한 MAML과 비교했을때 거의 비슷한 성능을 낼 수 있는 것처럼, gradient descent를 update할 때는 higher-level derivative는 그렇게 중요하지 않는 것처럼 보인다.
- 생각많은 소심남 2019. 7. 31. 23:29