딥러닝 취업 후기 - dibleoning chwieob hugi

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?

* Convolution 의 원리를 설명해보세요

* Convolution Layer와 FCL을 비교할 때 왜 Convolution이 더 효율적인가요?

* 3x3 filter 2개와 5x5 filter 1개가 있을 때 어느쪽이 더 효율적일지? 그 이유는?

* batch size와 gpu 메모리의 관계는? batch size를 경험적으로 정하나요? 아니면 gpu 메모리를 고려하여 정하나요?

* batch size를 일정 수준 이상으로 늘리면 그 이후부터는 학습속도에 큰 차이가 없는데 그 이유를 아시나요?

* text 데이터를 전처리하는 개인적 경험을 자세히 설명해보세요.

* Python의 numpy 배열에 대해 설명해보세요.

* C언어의 배열과 Python 리스트의 차이는?

* Graph Neural Network에 대해 설명해보세요.

* Graph Neural Network에서 어떤 부분을 최적화하였습니까?

* 계산물리학 분야에서 ML 모델이 아니라 GNN을 사용하는 이유는 무엇인가요?

* 원자 사이의 상호작용 전처리는 어느 정도 레벨에서 이루어집니까?

* Decision Tree는 무엇입니까?

* Bagging과 Boosting의 차이는? (혹은 RandomForest와 XGBoost의 차이는?)

* 위의 두 모델중 어느쪽이 더 Overfitting이 잘 될까요?

* Overfitting을 극복하는 방법을 아는대로 모두 설명해보세요.

* Normalization과 Regularization의 차이는 무엇입니까?

* BatchNormalization은 무엇입니까?

* Dropout은 무엇입니까?

* 그래프에서 사이클이란 무엇입니까?

* CNN의 여러 모델에 대해 설명해보세요 (AlexNet, LeNet, ResNet, Inception Module, SENet 등)

* Graph Neural Network 중 하나의 모델에 대해 설명해보세요.

* Attention이란 무엇입니까?

* 메모리에 대해 설명해보세요.

* YOLO 모델을 실시간 영상처리에 사용한 이유는 무엇입니까?

* U-Net과 같은 Image Segmentation에 대해 설명해보세요.

* 머신러닝 프로젝트에서 데이터수집/전처리/모델링/검증 단계에서 가장 중요하다고 생각하는 것은? 그 이유는?

* Hashmap에 대해 아시나요?

* Stack과 Queue에 대해 설명해보세요.

* CPU와 GPU의 차이는 무엇입니까?

사실 위의 질문들이 엄청나게 어렵다고 볼 순 없다. 다만, 범위가 방대할 뿐.. 그리고 대부분의 질문에 답변했다고 해서 무조건 합격도 아닌 것 같다. 

안녕하세요. 현재 영상 처리 및 딥러닝에 관해 연구 중인 학생(박사 3년차) 입니다.

우선 본인이 "이 업계가 흥미롭다" 라고 하셨는데, 그 말의 의미가 "순수하게 관심이있다" 라는 뜻인지 아니면 지금 하고 있는 일에 지쳐 이 보다 더 쉬운 직종은 없을까해서 "흥미롭다" 인지 그걸 한번 여쭙고 싶습니다.

우선 전자의 경우 (순수하게 관심): 정말 순수하게 관심이 있으시면 지금부터해도 늦지 않으셨습니다. 사실 연구나 공부는 마음먹은대로입니다. 나이가 많다고 늦춰지는건 절대 아닙니다. 오히려 나이가 많은것으로 인해 연구 혹은 공부의 접근방법이 일반적으로 나이 어린 학생들에 비해 효율적입니다 (하지만 나이와 현실이라는 문제로 인해 돈을 빨리 벌어야하는 스트레스가 동반됩니다. 이것은 슬프게도 본인이 알아서 조절해나가셔야 합니다. 저 또한 나이가 적은 편은 아닙니다. 그래서 저도 항상 이러한 문제로 매번 스트레스를 겪지만, 제가 하는 연구가 너무 재밌기에 잘 버티고 있습니다). 그러나 이 업계는 기술의 발전이 나날이 빠르게 발전하기 때문에 매번 새로운 트랜드를 찾아보고 연구하고 공부하셔야합니다 (이는 다른 분야도 마찬가지겠지만, 딥러닝 분야는 특히나 더 빠르게 트랜드가 계속 바뀝니다). 이러한 점들을 모두 고려해서라도 만일 딥러닝을 하고싶으시다면 대학원에 가시는것을 추천드립니다(하지만 가고자하는 딥러닝 업계에서 무엇을 하실건지 우선 정하셔야합니다. 영상처리 쪽을 하실건지 자연어 처리쪽을 하실건지 아니면 강화학습쪽을 하실건지 이건 본인이 정하셔야합니다).
"공부를 어떻게해라" 라는 말씀을 안드리겠습니다. 공부란 매우 주관적인 요소로 개개인마다 이해하는 속도가 다르기 때문에 제가 커리큘럼을 말씀드리면 오히려 다양한 면을 보지 못하고 한 우물에 빠지는 경우가 있기 때문입니다.

후자의 경우라면, 딥러닝말고도 돈 많이 받는 업계는 많습니다. 혹시 딥러닝이 "요즘 트랜드라서" 라는 생각을 하고 결정한건 아닌지 우려됩니다 (트랜트는 언젠가 다른것으로 대체되니까요).

2022 프로그래머스

(주)그렙 / 대표 임성수 / 서울특별시 서초구 강남대로 327, 2층 프로그래머스(서초동, 대륭서초타워) / 사업자등록번호 220-88-75699 / 통신판매업신고 제 2014-서울강남-03241호 / 직업정보제공사업 신고번호 J1200020180027 / (주)그렙은 통신판매중개자로서, 통신판매의 당사자가 아니며 중개하는 콘텐츠 및 거래에 대한 책임을 부담하지 않습니다. 단, (주)그렙이 직접 제공하는 콘텐츠에 대해서는 책임을 부담합니다. 프로그래머스 사이트의 모든 콘텐츠, 정보, UI 등에 대한 무단 복제, 전송, 배포, 크롤링, 스크래핑 등의 행위를 거부하며, 이러한 행위는 관련 법령에 의해 엄격히 금지됩니다.

(어딘가에서 보고 복사해두었던 것인데, 출처는 찾을 수 없다. 글을 공유해주시면 분께 감사드린다)

"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 메모리는 어떻게 계산하는가?

TF 또는 Keras 등을사용할때디버깅노하우는?

Collaborative Filtering에대해설명한다면?

AutoML이뭐하는걸까?

results matching ""

    No results matching ""