(어딘가에서 보고 복사해두었던 것인데, 출처는 찾을 수 없다. 글을 공유해주시면 분께 감사드린다)
"Deep learning: A critical appraisal"이란 논문인데요, "왜 딥러닝을 이용해야하는가?", "딥러닝이 잘하는 것은 무엇이고 못하는 것은 무엇인가?", "인공지능은 얼마나 멀리있는가?" 등에 대해 이야기하려면 꼭 짚어봐야하는 내용들이죠.
심리학자이자 인공지능학자이자 우버에 스타트업을 매각한 사업가이기도 한 Gary Marcus 뉴욕대 교수는 2018년 1월에 arXiv에 올린 이 글을 통해 딥러닝의 10가지 한계점에 대해 얘기하고 있는데요, 결국 "generalization"과 "abstraction"의 한계점들을 이야기한게 아닌가 싶습니다. 딥러닝에 대해 충분히 토의해볼만한 가치가 있는 이야기들이니 영상에서 한번 확인해보시길 바랄게요~
"Deep Learning: A Critical Appraisal", Gary Marcus, 2018.
[Link]https://arxiv.org/abs/1801.00631
[YouTube]https://www.youtube.com/watch?v=6hg5d10SZr0&index=34&list=PL0oFI08O71gKEXITQ7OG2SCCXkrtid7Fq
[Slides]https://www.slideshare.net/TerryTaewoongUm/deep-learning-a-critical-appraisal-2018
딥러닝이라는 주제에 대해서 개발자 면접을 자주 하다 보니 어떤 질문을 하면 되는지 대략 정리가 되었다.
1년 이하 정도 딥러닝을 열심히 해 본 개발자들이 일정 수준 이상으로 잘 대답할 것으로 기대하는 질문들이다.
요즘 Sigmoid 보다 ReLU를많이쓰는데그이유는?
Non-Linearity라는말의의미와그필요성은?
ReLU로 어떻게 곡선 함수를 근사하나?
ReLU의문제점은?
Bias는왜있는걸까?
Gradient Descent에대해서쉽게설명한다면?
왜꼭 Gradient를써야할까?
그 그래프에서 가로축과 세로축 각각은 무엇인가?
실제 상황에서는 그 그래프가 어떻게 그려질까?
GD 중에때때로 Loss가증가하는이유는?
중학생이 이해할 수 있게 더 쉽게 설명 한다면?
Back Propagation에대해서쉽게설명한다면?
Local Minima 문제에도불구하고딥러닝이잘되는이유는?
GD가 Local Minima 문제를피하는방법은?
찾은해가 Global Minimum인지아닌지알수있는방법은?
CNN에 대해서 아는대로 얘기하라
CNN이 MLP보다좋은이유는?
어떤 CNN의 파라메터 개수를 계산해 본다면?
주어진 CNN과똑같은 MLP를만들수있나?
풀링시에 만약 Max를 사용한다면 그 이유는?
시퀀스 데이터에 CNN을 적용하는 것이 가능할까?
Word2Vec의원리는?
그 그림에서 왼쪽 파라메터들을 임베딩으로 쓰는 이유는?
그 그림에서 오른쪽 파라메터들의 의미는 무엇일까?
남자와 여자가 가까울까? 남자와 자동차가 가까울까?
번역을 Unsupervised로할수있을까?
Auto Encoder에대해서아는대로얘기하라
MNIST AE를 TF나 Keras등으로만든다면몇줄일까?
MNIST에 대해서 임베딩 차원을 1로 해도 학습이 될까?
임베딩 차원을 늘렸을 때의 장단점은?
AE 학습시항상 Loss를 0으로만들수있을까?
VAE는무엇인가?
Training 세트와 Test 세트를분리하는이유는?
Validation 세트가따로있는이유는?
Test 세트가 오염되었다는 말의 뜻은?
Regularization이란무엇인가?
Batch Normalization의효과는?
Dropout의효과는?
BN 적용해서 학습 이후 실제 사용시에 주의할 점은? 코드로는?
GAN에서 Generator 쪽에도 BN을적용해도될까?
SGD, RMSprop, Adam에대해서아는대로설명한다면?
SGD에서 Stochastic의의미는?
미니배치를 작게 할때의 장단점은?
모멘텀의 수식을 적어 본다면?
간단한 MNIST 분류기를 MLP+CPU 버전으로 numpy로만든다면몇줄일까?
어느 정도 돌아가는 녀석을 작성하기까지 몇시간 정도 걸릴까?
Back Propagation은몇줄인가?
CNN으로 바꾼다면 얼마나 추가될까?
간단한 MNIST 분류기를 TF나 Keras 등으로작성하는데몇시간이필요한가?
CNN이아닌 MLP로해도잘될까?
마지막 레이어 부분에 대해서 설명 한다면?
학습은 BCE loss로하되상황을 MSE loss로보고싶다면?
만약 한글 (인쇄물) OCR을 만든다면 데이터 수집은 어떻게 할 수 있을까?
간단한 MNIST DCGAN을작성한다면 TF 등으로몇줄정도될까?
GAN의 Loss를적어보면?
D를학습할때 G의 Weight을고정해야한다. 방법은?
학습이 잘 안될때 시도해 볼 수 있는 방법들은?
딥러닝할때 GPU를쓰면좋은이유는?
학습중인데 GPU를 100% 사용하지않고있다. 이유는?
GPU를두개다쓰고싶다. 방법은?
학습시 필요한 GPU 메모리는 어떻게 계산하는가?