Understanding deep
learning requires rethinking
generalization (2017)
- 2/2
Chiyuan Zhang, Samy Bengio, Moritz
Hardt, Benjamin Recht, Oriol Vinyals
170326 @mikibear_ 논문 정리
https://arxiv.org/abs/1611.03530
이 자료는 첫 자료에서 이어지는 자료입니다.
질문 3,
"딥러닝 모델이 암기를 한다고 했는데, 그럼 그
Capacity가 어떻게 되나?"
Understanding deep learning requires rethinking generalization (2017)    2 2(2)
"(2n + d)의 weight를 가지고, 활성화 함수로 ReLU를
사용하는 2층 뉴럴 네트워크는
d차원의 n개의 샘플에 대한 어떠한 함수든 표현할 수
있다."
증명
(약간의 선형대수 지식이 필요합니다)
본 Theorem의 증명은 다음과 같은 Lemma로 시작합니다.
본 Theorem의 증명은 다음과 같은 Lemma로 시작합니다.
Sequence가 이렇게 있을 때,
본 Theorem의 증명은 다음과 같은 Lemma로 시작합니다.
Sequence가 이렇게 있을 때,
이런 매트릭스 A가
본 Theorem의 증명은 다음과 같은 Lemma로 시작합니다.
Sequence가 이렇게 있을 때,
매트릭스 A가
Rank가 n입니다.
본 Theorem의 증명은 다음과 같은 Lemma로 시작합니다.
Sequence가 이렇게 있을 때,
매트릭스 A가
Rank가 n입니다.
???????????
좀 친숙한 형태로 바꿔봅시다
Understanding deep learning requires rethinking generalization (2017)    2 2(2)
A를 Square Matrix Form으로 적으면 요렇게 됩니다
A는 Lower-triangular matrix인 것을 알 수 있습니다.
A는 Lower-triangular matrix인 것을 알 수 있습니다.
따라서 A의 rank는 n입니다.
(Gaussian elimination 등을 떠올려보면 더 쉽게 와닿으실 겁니다.)
Low-triangular matrix의 모든 eigenvalue는 diagonal elements이므로,
가장 작은 eigenvalue가 diagonal element 중 가장 작은 것이 되는 것도
자연스럽습니다.
근데 이게
근데 이게
"(2n + d)의 weight를 가지고, 활성화 함수로 ReLU를
사용하는 2층 뉴럴 네트워크는
d차원의 n개의 샘플에 대한 어떠한 함수든 표현할 수
있다."
이거랑 뭔 상관일까요… 일단 Theorem 1에 대한 증명을
봅시다.
"(2n + d)의 weight를 가지고, 활성화 함수로 ReLU를
사용하는 2층 뉴럴 네트워크는
d차원의 n개의 샘플에 대한 어떠한 함수든 표현할 수
있다."
"(2n + d)의 weight를 가지고, 활성화 함수로 ReLU를
사용하는 2층 뉴럴 네트워크는
d차원의 n개의 샘플에 대한 어떠한 함수든 표현할 수
있다."
요걸 함수 형태로 나타내야 합니다.
"(2n + d)의 weight를 가지고, 활성화 함수로 ReLU를
사용하는 2층 뉴럴 네트워크는
d차원의 n개의 샘플에 대한 어떠한 함수든 표현할 수
있다."
요걸 함수 형태로 나타내야 합니다.
어떻게?
"(2n + d)의 weight를 가지고, 활성화 함수로 ReLU를
사용하는 2층 뉴럴 네트워크는
d차원의 n개의 샘플에 대한 어떠한 함수든 표현할 수
있다."
요걸 함수 형태로 나타내야 합니다.
어떻게?
이렇게!
"(2n + d)의 weight를 가지고, 활성화 함수로 ReLU를
사용하는 2층 뉴럴 네트워크는
d차원의 n개의 샘플에 대한 어떠한 함수든 표현할 수
있다."
"(2n + d)의 weight를 가지고, 활성화 함수로 ReLU를
사용하는 2층 뉴럴 네트워크는
d차원의 n개의 샘플에 대한 어떠한 함수든 표현할 수
있다."
"(2n + d)의 weight를 가지고, 활성화 함수로 ReLU를
사용하는 2층 뉴럴 네트워크는
d차원의 n개의 샘플에 대한 어떠한 함수든 표현할 수
있다."
"(2n + d)의 weight를 가지고, 활성화 함수로 ReLU를
사용하는 2층 뉴럴 네트워크는
d차원의 n개의 샘플에 대한 어떠한 함수든 표현할 수
있다."
좋습니다. 이제
가
좋습니다. 이제
가
D차원의 n개의 샘플에 대한 어떠한 함수도 될 수 있음을
보이면 될 것 같습니다.
좋습니다. 이제
가
D차원의 n개의 샘플에 대한 어떠한 함수도 될 수 있음을
보이면 될 것 같습니다.
그런데 이를 어떻게 보일까요.
약간 생각을 틀어서 생각해봐야할 것 같습니다.
약간 생각을 틀어서 생각해봐야할 것 같습니다.
샘플과 타겟의 벡터를 각각
, 라 해봅시다.
만약, 모든 1부터 n까지의 모든 i에 대해서
를 모두 만족시키는
만약, 모든 1부터 n까지의 모든 i에 대해서
를 모두 만족시키는
w, b, a를 찾을 수 있다면, 이는 샘플 S와 타겟 y에 대한
일대일함수 c를 찾을 수 있다는 것을 말합니다.
"모든 1부터 n까지의 모든 i에 대해서
를 모두 만족시키는 w, b, a를 찾을 수 있다"
는 동치입니다.
"(2n + d)의 weight를 가지고, 활성화 함수로 ReLU를
사용하는 2층 뉴럴 네트워크는
d차원의 n개의 샘플에 대한 어떠한 함수든 표현할 수
있다."
따라서
와
그러면 좀 수식을 전개하면서 볼까요.
Understanding deep learning requires rethinking generalization (2017)    2 2(2)
Understanding deep learning requires rethinking generalization (2017)    2 2(2)
Understanding deep learning requires rethinking generalization (2017)    2 2(2)
Understanding deep learning requires rethinking generalization (2017)    2 2(2)
Understanding deep learning requires rethinking generalization (2017)    2 2(2)
Understanding deep learning requires rethinking generalization (2017)    2 2(2)
이거 되게 익숙한 식이죠?
이거 되게 익숙한 식이죠?
이거 되게 익숙한 식이죠?
A는 rank가 n!
이거 되게 익숙한 식이죠?
A는 rank가 n! n*n matrix의 rank가 n이므로,
A는 invertible.
A는 invertible,
고로 임의의 a, b에
해당하는 w를 항상
찾을 수 있다.
"(2n + d)의 weight를 가지고, 활성화 함수로 ReLU를
사용하는 2층 뉴럴 네트워크는
d차원의 n개의 샘플에 대한 어떠한 함수든 표현할 수
있다."
증명 완료.
논문에서는 좀 더 일반화된 형태의 명제도 다룹니다...
만…
(수식 레이텍으로 쓰기 힘들어요)
(개인적인 생각)
사실 FFNN의 Approximation Capabilities에 대한 이 문제는
Universal approximation theorem에 대한 연구와 함께 몇몇
연구에서 이미 조명되었던 사항입니다.
(개인적인 생각)
사실 FFNN의 Approximation Capabilities에 대한 이 문제는
Universal approximation theorem에 대한 연구와 함께 몇몇
연구에서 이미 조명되었던 사항입니다.
그럼에도 불구하고, 본 논문에서 이를 재조명한 이유는,
1) '일반적인 통념과는 달리, Universal approximation
theorem이 Generalization을 보장해주는 것은 아니다'를
강조하고
2) 특정 2 layer NN에 대한 Capability에 대한 증명을
직관적으로 보이도록 발전시켰기 때문인 듯 합니다.
질문 4,
"SGD도 딥러닝 트레이닝 중 일반화를 시키는데
도움을 준다고 알려져 있는데, 이건 어떤가?"
본격적인 논의에 앞서, 본 섹션 도입에서는
'과연 우리는 딥러닝 모델 이전에 간단한 선형 모델에 대한
일반화라는 것에 대해서도 제대로 이해하고 있는가'에 대한
질문을 던집니다.
선형 모델에서의 일반화도 제대로 설명하지 못하는데,
딥러닝 모델에서의 일반화를 논하는 건 시기상조라는 거죠.
그래서 본 섹션에서는
SGD를 선형 모델에 적용시켜 수식을 전개합니다.
Nonnegative loss function을 가정하면, 일반적인 선형
모델의 ERM problem은 다음과 같을 것입니다.
x는 d차원의 feature vector이며, y는 label입니다.
Nonnegative loss function을 가정하면, 일반적인 선형
모델의 ERM problem은 다음과 같을 것입니다.
x는 d차원의 feature vector이며, y는 label입니다.
이를 를 푸는 것으로 바꿔 생각해봅시다.
(따라서, X는 n*d 행렬입니다)
Nonnegative loss function을 가정하면, 일반적인 선형
모델의 ERM problem은 다음과 같을 것입니다.
x는 d차원의 feature vector이며, y는 label입니다.
이를 를 푸는 것으로 바꿔 생각해봅시다.
(따라서, X는 n*d 행렬입니다)
d가 n보다 같거나 크게 되면 이 시스템은 Underdetermined입니다.
따라서, ERM problem에 대해서 다수의 global minima를 갖게 됩니다.
문제는, 이 다수의 global minima 중에 어떤 것이 가장 좋은
global minima인지 결정하기가 힘들다는 것입니다.
(여기서의 '좋다'는 말은 '일반화를 잘한다'는 말과
동치입니다)
만약 minima의 quality를 결정할 수 있는 인덱스가 있다면,
이것은 비교적 쉬운 문제일 것입니다.
기존의 방법에는 각 solution에서의 loss function의
curvature를 보고 판단하는 방법 등이 있으나, 선형 모델은
모든 solution에서 curvature가 모두 똑같으니 이를 사용하는
것은 불가능합니다.
그래서, 저자들은
‘SGD가 좋은 minima를 찾아주지 않을까'하는 믿음에 대해서
검증을 시작합니다.
그래서, 저자들은
‘SGD가 좋은 minima를 찾아주지 않을까'하는 믿음에 대해서
검증을 시작합니다.
SGD는 보통 이런 방식으로 움직이죠.
그래서, 저자들은
‘SGD가 좋은 minima를 찾아주지 않을까'하는 믿음에 대해서
검증을 시작합니다.
SGD는 보통 이런 방식으로 움직이죠.
다음 step에서의 weight 현재 weight step 사이즈 예측
에러
그래서, 저자들은
‘SGD가 좋은 minima를 찾아주지 않을까'하는 믿음에 대해서
검증을 시작합니다.
SGD는 보통 이런 방식으로 움직이죠.
그럼 이 식으로 w를 풀어봅시다.
다음 step에서의 weight 현재 weight step 사이즈 예측
에러
만약 이면,
만약 이면,
만약 이면,
만약 이면,
다시 말하면,
SGD에 의해서 찾아진 weight는 data point의 vector space에 span합니다.
다시 말하면,
SGD에 의해서 찾아진 weight는 data point의 vector space에 span합니다.
이렇게 찾아진 w를 라 두고, 우리가 원래 풀려고 했던 식인
다시 말하면,
SGD에 의해서 찾아진 weight는 data point의 vector space에 span합니다.
이렇게 찾아진 w를 라 두고, 우리가 원래 풀려고 했던 식인
를 SGD로 찾아낸 w로 풀어봅시다.
Understanding deep learning requires rethinking generalization (2017)    2 2(2)
Understanding deep learning requires rethinking generalization (2017)    2 2(2)
n*n matrix n vector
n*n matrix n vector
따라서, SGD에 의하면 는 Unique하게 결정됩니다.
n*n matrix n vector
따라서, SGD에 의하면 는 Unique하게 결정됩니다.
ERM problem의 무수히 많은 solution 중에서 단 하나만을
찾습니다.
n*n matrix n vector
게다가 를 일종의 kernel matrix처럼 사용해도
무방합니다. 만약 여기에 다른 커널들을 걸게 되면 SVM에서
많이 보게되는 kernel trick의 꼴을 띄게 됩니다.
n*n matrix n vector
게다가 를 일종의 kernel matrix처럼 사용해도
무방합니다. 만약 여기에 다른 커널들을 걸게 되면 SVM에서
많이 보게되는 kernel trick의 꼴을 띄게 됩니다.
Kernel trick에 대해서 처음 들어보신다면, (적어도 여기에선)
에 pre-processing을 한 사진을 갖다가 걸어줘도 괜찮다는 의미로
받아들이셔도 무방합니다.
n*n matrix n vector
물론 그런 식으로 kernel trick을 걸어주게 되면, 같은
데이터에 대한 것일지라도 각각의 kernel에 해당하는
optimal 는 달라질 것입니다.
추가적으로 보충하고 넘어가야하는 SGD의 훌륭한 점은,
이와 같은 solution이 L2-norm을 최소화하는 것과 동치라는 것입니다.
추가적으로 보충하고 넘어가야하는 SGD의 훌륭한 점은,
이와 같은 solution이 L2-norm을 최소화하는 것과 동치라는 것입니다.
간단한 시스템의 least-norm solution이
이고,
SGD에 의한 kernel solution으로 푸는 것이
, 등의 수식에서 기인한 것임을 생각해보면,
직관적입니다.
본 논문에서는
위 식을 MNIST와 CIFAR10에 대해서 풀어봅니다.
물론 n이 60,000개까지 올라가므로, LAPACK 병렬화,
24코어 시스템, 256GB RAM 등을 이용합니다.
실험 결과를 정리하면 다음과 같습니다.
실험 결과를 정리하면 다음과 같습니다.
단순한 선형 모델치고는 꽤 훌륭해 보입니다.
실험 결과를 정리하면 다음과 같습니다.
단순한 선형 모델치고는 꽤 훌륭해 보입니다.
특히, 커널에 따라서 꽤 많이 test error가 달라지는 것을 볼 수
있습니다.
SGD는 그 자체로 어느 정도 일반화 능력을 내포하고 있는 것처럼 보입니다.
SGD는 그 자체로 어느 정도 일반화 능력을 내포하고 있는 것처럼 보입니다.
이유를 꼽아보라면, 그 자체로 L2 regularization을 암시하기 때문입니다.
For linear models, SGD always converges to a solution with small norm.
Hence, the algorithm itself is implicitly regularizing the solution.
하지만, 논문은 이러한 논리에는 조금 문제가 있다고 주장합니다.
왜냐하면 MNIST 실험에서의 경우 none pre-processing의 경우가 220의 L2
norm을 가진 데에 반해, gabor filter pre-processing은 390의 L2 norm을
가졌기 때문입니다.
220 L2-norm
390 L2-norm
하지만, 논문은 이러한 논리에는 조금 문제가 있다고 주장합니다.
왜냐하면 MNIST 실험에서의 경우 none pre-processing의 경우가 220의 L2
norm을 가진 데에 반해, gabor filter pre-processing은 390의 L2 norm을
가졌기 때문입니다.
이는 모델의 L2-norm과 일반화 능력에 대한 기존의 관점과 대치되는
부분입니다.
220 L2-norm
390 L2-norm
질문 4,
"SGD도 딥러닝 트레이닝 중 일반화를 시키는데
도움을 준다고 알려져 있는데, 이건 어떤가?"
'어느 정도는 맞는데, 그것도 완전히 맞지는 않는다'
질문 4,
"SGD도 딥러닝 트레이닝 중 일반화를 시키는데
도움을 준다고 알려져 있는데, 이건 어떤가?"
'어느 정도는 맞는데, 그것도 완전히 맞지는 않는다'
또 미적지근...
논문의 결론
우리는 뉴럴 네트워크 모델의 '일반화'라는 것에 대해서
거의 이해하지 못하고 있다!
그리고…
논문의 결론
우리는 뉴럴 네트워크 모델의 '일반화'라는 것에 대해서
거의 이해하지 못하고 있다!
그리고…
“We believe that understanding neural networks
requires rethinking generalization.”
틀린 내용이 있거나 중요한데 빠져있는 경우 알려주세요!
@mikibear

More Related Content

PDF
자습해도 모르겠던 딥러닝, 머리속에 인스톨 시켜드립니다.
PDF
[PR12] understanding deep learning requires rethinking generalization
PDF
DevSecOps | DevOps Sec
PPTX
CNN 초보자가 만드는 초보자 가이드 (VGG 약간 포함)
PDF
딥러닝 자연어처리 - RNN에서 BERT까지
PPTX
Diabetes Mellitus
PPTX
Hypertension
PPTX
Republic Act No. 11313 Safe Spaces Act (Bawal Bastos Law).pptx
자습해도 모르겠던 딥러닝, 머리속에 인스톨 시켜드립니다.
[PR12] understanding deep learning requires rethinking generalization
DevSecOps | DevOps Sec
CNN 초보자가 만드는 초보자 가이드 (VGG 약간 포함)
딥러닝 자연어처리 - RNN에서 BERT까지
Diabetes Mellitus
Hypertension
Republic Act No. 11313 Safe Spaces Act (Bawal Bastos Law).pptx

What's hot (11)

PDF
Understanding deep learning requires rethinking generalization (2017) 1/2
PDF
5.2 Régression linéaire
PDF
5.1 K plus proches voisins
PPTX
Xgboost: A Scalable Tree Boosting System - Explained
PDF
Installation hadoopv2.7.4-amal abid
PPTX
Résolution problème ppt final fr
PPT
PPTX
Les 10 plus populaires algorithmes du machine learning
PPTX
Intelligence artificielle et soin.pptx
PPTX
Introduction to Machine Learning
PPTX
Introduction to XGboost
Understanding deep learning requires rethinking generalization (2017) 1/2
5.2 Régression linéaire
5.1 K plus proches voisins
Xgboost: A Scalable Tree Boosting System - Explained
Installation hadoopv2.7.4-amal abid
Résolution problème ppt final fr
Les 10 plus populaires algorithmes du machine learning
Intelligence artificielle et soin.pptx
Introduction to Machine Learning
Introduction to XGboost
Ad

Similar to Understanding deep learning requires rethinking generalization (2017) 2 2(2) (20)

PDF
The fastalgorithmfordeepbeliefnets
PDF
PR12 Season3 Weight Agnostic Neural Networks
PDF
PaLM Paper Review
PDF
221123 지승현 Uniform convergence may be unable to explain generalization in dee...
PPTX
Deep neural networks for You-Tube recommendations
PPTX
Guided policy search
PPTX
SAGAN_2024seminar announce_seoultech.pptx
PPTX
[kor ver.]패턴인식을 위한 인공신경망 Caps-net 구현
PDF
Active learning literature survey
PDF
[컴퓨터비전과 인공지능] 7. 합성곱 신경망 2
PDF
REALM
PPTX
Dense sparse-dense training for dnn and Other Models
PDF
딥러닝 기본 원리의 이해
PPTX
Variational Autoencoder를 여러 가지 각도에서 이해하기 (Understanding Variational Autoencod...
PPTX
Review MLP Mixer
PDF
Explaining and harnessing adversarial examples (2015)
PDF
[컴퓨터비전과 인공지능] 10. 신경망 학습하기 파트 1 - 1. 활성화 함수
PDF
Coursera Machine Learning (by Andrew Ng)_강의정리
PPTX
Chapter 10 sequence modeling recurrent and recursive nets
PDF
밑바닥부터 시작하는 딥러닝 - 학습관련기술들 스크립트
The fastalgorithmfordeepbeliefnets
PR12 Season3 Weight Agnostic Neural Networks
PaLM Paper Review
221123 지승현 Uniform convergence may be unable to explain generalization in dee...
Deep neural networks for You-Tube recommendations
Guided policy search
SAGAN_2024seminar announce_seoultech.pptx
[kor ver.]패턴인식을 위한 인공신경망 Caps-net 구현
Active learning literature survey
[컴퓨터비전과 인공지능] 7. 합성곱 신경망 2
REALM
Dense sparse-dense training for dnn and Other Models
딥러닝 기본 원리의 이해
Variational Autoencoder를 여러 가지 각도에서 이해하기 (Understanding Variational Autoencod...
Review MLP Mixer
Explaining and harnessing adversarial examples (2015)
[컴퓨터비전과 인공지능] 10. 신경망 학습하기 파트 1 - 1. 활성화 함수
Coursera Machine Learning (by Andrew Ng)_강의정리
Chapter 10 sequence modeling recurrent and recursive nets
밑바닥부터 시작하는 딥러닝 - 학습관련기술들 스크립트
Ad

Understanding deep learning requires rethinking generalization (2017) 2 2(2)

  • 1. Understanding deep learning requires rethinking generalization (2017) - 2/2 Chiyuan Zhang, Samy Bengio, Moritz Hardt, Benjamin Recht, Oriol Vinyals 170326 @mikibear_ 논문 정리
  • 3. 질문 3, "딥러닝 모델이 암기를 한다고 했는데, 그럼 그 Capacity가 어떻게 되나?"
  • 5. "(2n + d)의 weight를 가지고, 활성화 함수로 ReLU를 사용하는 2층 뉴럴 네트워크는 d차원의 n개의 샘플에 대한 어떠한 함수든 표현할 수 있다."
  • 7. 본 Theorem의 증명은 다음과 같은 Lemma로 시작합니다.
  • 8. 본 Theorem의 증명은 다음과 같은 Lemma로 시작합니다. Sequence가 이렇게 있을 때,
  • 9. 본 Theorem의 증명은 다음과 같은 Lemma로 시작합니다. Sequence가 이렇게 있을 때, 이런 매트릭스 A가
  • 10. 본 Theorem의 증명은 다음과 같은 Lemma로 시작합니다. Sequence가 이렇게 있을 때, 매트릭스 A가 Rank가 n입니다.
  • 11. 본 Theorem의 증명은 다음과 같은 Lemma로 시작합니다. Sequence가 이렇게 있을 때, 매트릭스 A가 Rank가 n입니다. ???????????
  • 12. 좀 친숙한 형태로 바꿔봅시다
  • 14. A를 Square Matrix Form으로 적으면 요렇게 됩니다
  • 15. A는 Lower-triangular matrix인 것을 알 수 있습니다.
  • 16. A는 Lower-triangular matrix인 것을 알 수 있습니다. 따라서 A의 rank는 n입니다. (Gaussian elimination 등을 떠올려보면 더 쉽게 와닿으실 겁니다.)
  • 17. Low-triangular matrix의 모든 eigenvalue는 diagonal elements이므로, 가장 작은 eigenvalue가 diagonal element 중 가장 작은 것이 되는 것도 자연스럽습니다.
  • 19. 근데 이게 "(2n + d)의 weight를 가지고, 활성화 함수로 ReLU를 사용하는 2층 뉴럴 네트워크는 d차원의 n개의 샘플에 대한 어떠한 함수든 표현할 수 있다." 이거랑 뭔 상관일까요… 일단 Theorem 1에 대한 증명을 봅시다.
  • 20. "(2n + d)의 weight를 가지고, 활성화 함수로 ReLU를 사용하는 2층 뉴럴 네트워크는 d차원의 n개의 샘플에 대한 어떠한 함수든 표현할 수 있다."
  • 21. "(2n + d)의 weight를 가지고, 활성화 함수로 ReLU를 사용하는 2층 뉴럴 네트워크는 d차원의 n개의 샘플에 대한 어떠한 함수든 표현할 수 있다." 요걸 함수 형태로 나타내야 합니다.
  • 22. "(2n + d)의 weight를 가지고, 활성화 함수로 ReLU를 사용하는 2층 뉴럴 네트워크는 d차원의 n개의 샘플에 대한 어떠한 함수든 표현할 수 있다." 요걸 함수 형태로 나타내야 합니다. 어떻게?
  • 23. "(2n + d)의 weight를 가지고, 활성화 함수로 ReLU를 사용하는 2층 뉴럴 네트워크는 d차원의 n개의 샘플에 대한 어떠한 함수든 표현할 수 있다." 요걸 함수 형태로 나타내야 합니다. 어떻게? 이렇게!
  • 24. "(2n + d)의 weight를 가지고, 활성화 함수로 ReLU를 사용하는 2층 뉴럴 네트워크는 d차원의 n개의 샘플에 대한 어떠한 함수든 표현할 수 있다."
  • 25. "(2n + d)의 weight를 가지고, 활성화 함수로 ReLU를 사용하는 2층 뉴럴 네트워크는 d차원의 n개의 샘플에 대한 어떠한 함수든 표현할 수 있다."
  • 26. "(2n + d)의 weight를 가지고, 활성화 함수로 ReLU를 사용하는 2층 뉴럴 네트워크는 d차원의 n개의 샘플에 대한 어떠한 함수든 표현할 수 있다."
  • 27. "(2n + d)의 weight를 가지고, 활성화 함수로 ReLU를 사용하는 2층 뉴럴 네트워크는 d차원의 n개의 샘플에 대한 어떠한 함수든 표현할 수 있다."
  • 29. 좋습니다. 이제 가 D차원의 n개의 샘플에 대한 어떠한 함수도 될 수 있음을 보이면 될 것 같습니다.
  • 30. 좋습니다. 이제 가 D차원의 n개의 샘플에 대한 어떠한 함수도 될 수 있음을 보이면 될 것 같습니다. 그런데 이를 어떻게 보일까요.
  • 31. 약간 생각을 틀어서 생각해봐야할 것 같습니다.
  • 32. 약간 생각을 틀어서 생각해봐야할 것 같습니다. 샘플과 타겟의 벡터를 각각 , 라 해봅시다.
  • 33. 만약, 모든 1부터 n까지의 모든 i에 대해서 를 모두 만족시키는
  • 34. 만약, 모든 1부터 n까지의 모든 i에 대해서 를 모두 만족시키는 w, b, a를 찾을 수 있다면, 이는 샘플 S와 타겟 y에 대한 일대일함수 c를 찾을 수 있다는 것을 말합니다.
  • 35. "모든 1부터 n까지의 모든 i에 대해서 를 모두 만족시키는 w, b, a를 찾을 수 있다" 는 동치입니다. "(2n + d)의 weight를 가지고, 활성화 함수로 ReLU를 사용하는 2층 뉴럴 네트워크는 d차원의 n개의 샘플에 대한 어떠한 함수든 표현할 수 있다." 따라서 와
  • 36. 그러면 좀 수식을 전개하면서 볼까요.
  • 45. 이거 되게 익숙한 식이죠? A는 rank가 n!
  • 46. 이거 되게 익숙한 식이죠? A는 rank가 n! n*n matrix의 rank가 n이므로, A는 invertible.
  • 47. A는 invertible, 고로 임의의 a, b에 해당하는 w를 항상 찾을 수 있다.
  • 48. "(2n + d)의 weight를 가지고, 활성화 함수로 ReLU를 사용하는 2층 뉴럴 네트워크는 d차원의 n개의 샘플에 대한 어떠한 함수든 표현할 수 있다." 증명 완료. 논문에서는 좀 더 일반화된 형태의 명제도 다룹니다... 만… (수식 레이텍으로 쓰기 힘들어요)
  • 49. (개인적인 생각) 사실 FFNN의 Approximation Capabilities에 대한 이 문제는 Universal approximation theorem에 대한 연구와 함께 몇몇 연구에서 이미 조명되었던 사항입니다.
  • 50. (개인적인 생각) 사실 FFNN의 Approximation Capabilities에 대한 이 문제는 Universal approximation theorem에 대한 연구와 함께 몇몇 연구에서 이미 조명되었던 사항입니다. 그럼에도 불구하고, 본 논문에서 이를 재조명한 이유는, 1) '일반적인 통념과는 달리, Universal approximation theorem이 Generalization을 보장해주는 것은 아니다'를 강조하고 2) 특정 2 layer NN에 대한 Capability에 대한 증명을 직관적으로 보이도록 발전시켰기 때문인 듯 합니다.
  • 51. 질문 4, "SGD도 딥러닝 트레이닝 중 일반화를 시키는데 도움을 준다고 알려져 있는데, 이건 어떤가?"
  • 52. 본격적인 논의에 앞서, 본 섹션 도입에서는 '과연 우리는 딥러닝 모델 이전에 간단한 선형 모델에 대한 일반화라는 것에 대해서도 제대로 이해하고 있는가'에 대한 질문을 던집니다. 선형 모델에서의 일반화도 제대로 설명하지 못하는데, 딥러닝 모델에서의 일반화를 논하는 건 시기상조라는 거죠. 그래서 본 섹션에서는 SGD를 선형 모델에 적용시켜 수식을 전개합니다.
  • 53. Nonnegative loss function을 가정하면, 일반적인 선형 모델의 ERM problem은 다음과 같을 것입니다. x는 d차원의 feature vector이며, y는 label입니다.
  • 54. Nonnegative loss function을 가정하면, 일반적인 선형 모델의 ERM problem은 다음과 같을 것입니다. x는 d차원의 feature vector이며, y는 label입니다. 이를 를 푸는 것으로 바꿔 생각해봅시다. (따라서, X는 n*d 행렬입니다)
  • 55. Nonnegative loss function을 가정하면, 일반적인 선형 모델의 ERM problem은 다음과 같을 것입니다. x는 d차원의 feature vector이며, y는 label입니다. 이를 를 푸는 것으로 바꿔 생각해봅시다. (따라서, X는 n*d 행렬입니다) d가 n보다 같거나 크게 되면 이 시스템은 Underdetermined입니다. 따라서, ERM problem에 대해서 다수의 global minima를 갖게 됩니다.
  • 56. 문제는, 이 다수의 global minima 중에 어떤 것이 가장 좋은 global minima인지 결정하기가 힘들다는 것입니다. (여기서의 '좋다'는 말은 '일반화를 잘한다'는 말과 동치입니다) 만약 minima의 quality를 결정할 수 있는 인덱스가 있다면, 이것은 비교적 쉬운 문제일 것입니다. 기존의 방법에는 각 solution에서의 loss function의 curvature를 보고 판단하는 방법 등이 있으나, 선형 모델은 모든 solution에서 curvature가 모두 똑같으니 이를 사용하는 것은 불가능합니다.
  • 57. 그래서, 저자들은 ‘SGD가 좋은 minima를 찾아주지 않을까'하는 믿음에 대해서 검증을 시작합니다.
  • 58. 그래서, 저자들은 ‘SGD가 좋은 minima를 찾아주지 않을까'하는 믿음에 대해서 검증을 시작합니다. SGD는 보통 이런 방식으로 움직이죠.
  • 59. 그래서, 저자들은 ‘SGD가 좋은 minima를 찾아주지 않을까'하는 믿음에 대해서 검증을 시작합니다. SGD는 보통 이런 방식으로 움직이죠. 다음 step에서의 weight 현재 weight step 사이즈 예측 에러
  • 60. 그래서, 저자들은 ‘SGD가 좋은 minima를 찾아주지 않을까'하는 믿음에 대해서 검증을 시작합니다. SGD는 보통 이런 방식으로 움직이죠. 그럼 이 식으로 w를 풀어봅시다. 다음 step에서의 weight 현재 weight step 사이즈 예측 에러
  • 65. 다시 말하면, SGD에 의해서 찾아진 weight는 data point의 vector space에 span합니다.
  • 66. 다시 말하면, SGD에 의해서 찾아진 weight는 data point의 vector space에 span합니다. 이렇게 찾아진 w를 라 두고, 우리가 원래 풀려고 했던 식인
  • 67. 다시 말하면, SGD에 의해서 찾아진 weight는 data point의 vector space에 span합니다. 이렇게 찾아진 w를 라 두고, 우리가 원래 풀려고 했던 식인 를 SGD로 찾아낸 w로 풀어봅시다.
  • 70. n*n matrix n vector
  • 71. n*n matrix n vector 따라서, SGD에 의하면 는 Unique하게 결정됩니다.
  • 72. n*n matrix n vector 따라서, SGD에 의하면 는 Unique하게 결정됩니다. ERM problem의 무수히 많은 solution 중에서 단 하나만을 찾습니다.
  • 73. n*n matrix n vector 게다가 를 일종의 kernel matrix처럼 사용해도 무방합니다. 만약 여기에 다른 커널들을 걸게 되면 SVM에서 많이 보게되는 kernel trick의 꼴을 띄게 됩니다.
  • 74. n*n matrix n vector 게다가 를 일종의 kernel matrix처럼 사용해도 무방합니다. 만약 여기에 다른 커널들을 걸게 되면 SVM에서 많이 보게되는 kernel trick의 꼴을 띄게 됩니다. Kernel trick에 대해서 처음 들어보신다면, (적어도 여기에선) 에 pre-processing을 한 사진을 갖다가 걸어줘도 괜찮다는 의미로 받아들이셔도 무방합니다.
  • 75. n*n matrix n vector 물론 그런 식으로 kernel trick을 걸어주게 되면, 같은 데이터에 대한 것일지라도 각각의 kernel에 해당하는 optimal 는 달라질 것입니다.
  • 76. 추가적으로 보충하고 넘어가야하는 SGD의 훌륭한 점은, 이와 같은 solution이 L2-norm을 최소화하는 것과 동치라는 것입니다.
  • 77. 추가적으로 보충하고 넘어가야하는 SGD의 훌륭한 점은, 이와 같은 solution이 L2-norm을 최소화하는 것과 동치라는 것입니다. 간단한 시스템의 least-norm solution이 이고, SGD에 의한 kernel solution으로 푸는 것이 , 등의 수식에서 기인한 것임을 생각해보면, 직관적입니다.
  • 78. 본 논문에서는 위 식을 MNIST와 CIFAR10에 대해서 풀어봅니다. 물론 n이 60,000개까지 올라가므로, LAPACK 병렬화, 24코어 시스템, 256GB RAM 등을 이용합니다.
  • 79. 실험 결과를 정리하면 다음과 같습니다.
  • 80. 실험 결과를 정리하면 다음과 같습니다. 단순한 선형 모델치고는 꽤 훌륭해 보입니다.
  • 81. 실험 결과를 정리하면 다음과 같습니다. 단순한 선형 모델치고는 꽤 훌륭해 보입니다. 특히, 커널에 따라서 꽤 많이 test error가 달라지는 것을 볼 수 있습니다.
  • 82. SGD는 그 자체로 어느 정도 일반화 능력을 내포하고 있는 것처럼 보입니다.
  • 83. SGD는 그 자체로 어느 정도 일반화 능력을 내포하고 있는 것처럼 보입니다. 이유를 꼽아보라면, 그 자체로 L2 regularization을 암시하기 때문입니다. For linear models, SGD always converges to a solution with small norm. Hence, the algorithm itself is implicitly regularizing the solution.
  • 84. 하지만, 논문은 이러한 논리에는 조금 문제가 있다고 주장합니다. 왜냐하면 MNIST 실험에서의 경우 none pre-processing의 경우가 220의 L2 norm을 가진 데에 반해, gabor filter pre-processing은 390의 L2 norm을 가졌기 때문입니다. 220 L2-norm 390 L2-norm
  • 85. 하지만, 논문은 이러한 논리에는 조금 문제가 있다고 주장합니다. 왜냐하면 MNIST 실험에서의 경우 none pre-processing의 경우가 220의 L2 norm을 가진 데에 반해, gabor filter pre-processing은 390의 L2 norm을 가졌기 때문입니다. 이는 모델의 L2-norm과 일반화 능력에 대한 기존의 관점과 대치되는 부분입니다. 220 L2-norm 390 L2-norm
  • 86. 질문 4, "SGD도 딥러닝 트레이닝 중 일반화를 시키는데 도움을 준다고 알려져 있는데, 이건 어떤가?" '어느 정도는 맞는데, 그것도 완전히 맞지는 않는다'
  • 87. 질문 4, "SGD도 딥러닝 트레이닝 중 일반화를 시키는데 도움을 준다고 알려져 있는데, 이건 어떤가?" '어느 정도는 맞는데, 그것도 완전히 맞지는 않는다' 또 미적지근...
  • 88. 논문의 결론 우리는 뉴럴 네트워크 모델의 '일반화'라는 것에 대해서 거의 이해하지 못하고 있다! 그리고…
  • 89. 논문의 결론 우리는 뉴럴 네트워크 모델의 '일반화'라는 것에 대해서 거의 이해하지 못하고 있다! 그리고… “We believe that understanding neural networks requires rethinking generalization.”
  • 90. 틀린 내용이 있거나 중요한데 빠져있는 경우 알려주세요! @mikibear