AI Tech Interview
  • Notice
  • 🧑‍💻INTERVIEW
    • Statistics/Math
    • Machine Learning
    • Deep Learning
    • Python
    • Network
    • Operating System
    • Data Structure
    • Algorithm
Powered by GitBook
On this page
  • Notice
  • Interview Questions
  • Contributors
  • References
Edit on GitHub

Notice

NextStatistics/Math

Last updated 7 months ago


Notice

    • 하지만 Latex 문법이 달라 다른 웹사이트로 마이그레이션 예정입니다. 시간될 때 마이그레이션 예정입니다..🥲

    • 커뮤니티 활성화는 언제든지 환영입니다!


Interview Questions


Contributors


References

[!WARNING] PR 요청 시 을 준수해주세요. 준수하지 않을 시 해당 PR은 거절될 수 있습니다.

피드백은 을 참고하여 Pull Request로 보내주세요.

Pull Request 작성 규칙은 를 참고해주세요.

GitHub 외에 로도 보실 수 있습니다.

궁금한 점이 있거나 공유하고 싶은 팁이 있으시면 을 활용해주세요.

면접 레포 개선 프로젝트 진행 상황은 를 확인해주세요.

에서 말씀드린 것처럼 진행이 더딜 수 있습니다.

  • 고유값(eigen value)와 고유벡터(eigen vector)이 무엇이고 왜 중요한지 설명해주세요.

  • 샘플링(Sampling)과 리샘플링(Resampling)이 무엇이고 리샘플링의 장점을 말씀해주세요.

  • 확률 모형과 확률 변수는 무엇인가요?

  • 누적 분포 함수와 확률 밀도 함수는 무엇인가요? 수식과 함께 표현해주세요.

  • 조건부 확률은 무엇인가요?

  • 공분산과 상관계수는 무엇일까요? 수식과 함께 표현해주세요.

  • 신뢰 구간의 정의는 무엇인가요?

  • p-value를 모르는 사람에게 설명한다면 어떻게 설명하실 건가요?

  • R square의 의미는 무엇인가요?

  • 평균(mean)과 중앙값(median)중에 어떤 케이스에서 뭐를 써야할까요?

  • 중심극한정리는 왜 유용한걸까요?

  • 엔트로피(entropy)에 대해 설명해주세요. 가능하면 Information Gain도요.

  • 어떨 때 모수적 방법론을 쓸 수 있고, 어떨 때 비모수적 방법론을 쓸 수 있나요?

  • “likelihood”와 “probability”의 차이는 무엇일까요?

  • 통계에서 사용되는 bootstrap의 의미는 무엇인가요.

  • 모수가 매우 적은 (수십개 이하) 케이스의 경우 어떤 방식으로 예측 모델을 수립할 수 있을까요?

  • 베이지안과 프리퀀티스트 간의 입장차이를 설명해주실 수 있나요?

  • 검정력(statistical power)은 무엇일까요?

  • missing value가 있을 경우 채워야 할까요? 그 이유는 무엇인가요?

  • 아웃라이어의 판단하는 기준은 무엇인가요?

  • 필요한 표본의 크기를 어떻게 계산합니까?

  • Bias를 통제하는 방법은 무엇입니까?

  • 로그 함수는 어떤 경우 유용합니까? 사례를 들어 설명해주세요.

  • 베르누이 분포 / 이항 분포 / 카테고리 분포 / 다항 분포 / 가우시안 정규 분포 / t 분포 / 카이제곱 분포 / F 분포 / 베타 분포 / 감마 분포에 대해 설명해주세요. 그리고 분포 간의 연관성도 설명해주세요.

  • 출장을 위해 비행기를 타려고 합니다. 당신은 우산을 가져가야 하는지 알고 싶어 출장지에 사는 친구 3명에게 무작위로 전화를 하고 비가 오는 경우를 독립적으로 질문해주세요. 각 친구는 2/3로 진실을 말하고 1/3으로 거짓을 말합니다. 3명의 친구가 모두 “그렇습니다. 비가 내리고 있습니다”라고 말했습니다. 실제로 비가 내릴 확률은 얼마입니까?

  • 알고 있는 metric에 대해 설명해주세요. (ex. RMSE, MAE, recall, precision ...)

  • 정규화를 왜 해야할까요? 정규화의 방법은 무엇이 있나요?

  • Local Minima와 Global Minimum에 대해 설명해주세요.

  • 차원의 저주에 대해 설명해주세요.

  • dimension reduction기법으로 보통 어떤 것들이 있나요?

  • PCA는 차원 축소 기법이면서, 데이터 압축 기법이기도 하고, 노이즈 제거기법이기도 합니다. 왜 그런지 설명해주실 수 있나요?

  • LSA, LDA, SVD 등의 약자들이 어떤 뜻이고 서로 어떤 관계를 가지는지 설명할 수 있나요?

  • Markov Chain을 고등학생에게 설명하려면 어떤 방식이 제일 좋을까요?

  • 텍스트 더미에서 주제를 추출해야 합니다. 어떤 방식으로 접근해 나가시겠나요?

  • SVM은 왜 반대로 차원을 확장시키는 방식으로 동작할까요? SVM은 왜 좋을까요?

  • 다른 좋은 머신 러닝 대비, 오래된 기법인 나이브 베이즈(naive bayes)의 장점을 옹호해보세요.

  • 회귀 / 분류시 알맞은 metric은 무엇일까?

  • Association Rule의 Support, Confidence, Lift에 대해 설명해주세요.

  • 최적화 기법중 Newton’s Method와 Gradient Descent 방법에 대해 알고 있나요?

  • 머신러닝(machine)적 접근방법과 통계(statistics)적 접근방법의 둘간에 차이에 대한 견해가 있나요?

  • 인공신경망(deep learning이전의 전통적인)이 가지는 일반적인 문제점은 무엇일까요?

  • 지금 나오고 있는 deep learning 계열의 혁신의 근간은 무엇이라고 생각하시나요?

  • ROC 커브에 대해 설명해주실 수 있으신가요?

  • 여러분이 서버를 100대 가지고 있습니다. 이때 인공신경망보다 Random Forest를 써야하는 이유는 뭘까요?

  • K-means의 대표적 의미론적 단점은 무엇인가요? (계산량 많다는것 말고)

  • L1, L2 정규화에 대해 설명해주세요.

  • Cross Validation은 무엇이고 어떻게 해야하나요?

  • XGBoost을 아시나요? 왜 이 모델이 캐글에서 유명할까요?

  • 앙상블 방법엔 어떤 것들이 있나요?

  • feature vector란 무엇일까요?

  • 좋은 모델의 정의는 무엇일까요?

  • 50개의 작은 의사결정 나무는 큰 의사결정 나무보다 괜찮을까요? 왜 그렇게 생각하나요?

  • 스팸 필터에 로지스틱 리그레션을 많이 사용하는 이유는 무엇일까요?

  • OLS(ordinary least squre) regression의 공식은 무엇인가요?

  • 딥러닝은 무엇인가요? 딥러닝과 머신러닝의 차이는?

  • Cost Function과 Activation Function은 무엇인가요?

  • Tensorflow, PyTorch 특징과 차이가 뭘까요?

  • Data Normalization은 무엇이고 왜 필요한가요?

  • 알고있는 Activation Function에 대해 알려주세요. (Sigmoid, ReLU, LeakyReLU, Tanh 등)

  • 오버피팅일 경우 어떻게 대처해야 할까요?

  • 하이퍼 파라미터는 무엇인가요?

  • Weight Initialization 방법에 대해 말해주세요. 그리고 무엇을 많이 사용하나요?

  • 볼츠만 머신은 무엇인가요?

  • TF, PyTorch 등을 사용할 때 디버깅 노하우는?

  • 뉴럴넷의 가장 큰 단점은 무엇인가? 이를 위해 나온 One-Shot Learning은 무엇인가?

  • 요즘 Sigmoid 보다 ReLU를 많이 쓰는데 그 이유는?

    • Non-Linearity라는 말의 의미와 그 필요성은?

    • ReLU로 어떻게 곡선 함수를 근사하나?

    • ReLU의 문제점은?

    • Bias는 왜 있는걸까?

  • Gradient Descent에 대해서 쉽게 설명한다면?

    • 왜 꼭 Gradient를 써야 할까? 그 그래프에서 가로축과 세로축 각각은 무엇인가? 실제 상황에서는 그 그래프가 어떻게 그려질까?

    • GD 중에 때때로 Loss가 증가하는 이유는?

    • Back Propagation에 대해서 쉽게 설명 한다면?

  • Local Minima 문제에도 불구하고 딥러닝이 잘 되는 이유는?

    • GD가 Local Minima 문제를 피하는 방법은?

    • 찾은 해가 Global Minimum인지 아닌지 알 수 있는 방법은?

  • 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, PyTorch 등으로 작성하는데 몇시간이 필요한가?

    • CNN이 아닌 MLP로 해도 잘 될까?

    • 마지막 레이어 부분에 대해서 설명 한다면?

    • 학습은 BCE loss로 하되 상황을 MSE loss로 보고 싶다면?

  • 딥러닝할 때 GPU를 쓰면 좋은 이유는?

    • GPU를 두개 다 쓰고 싶다. 방법은?

    • 학습시 필요한 GPU 메모리는 어떻게 계산하는가?

  • What is the difference between list and tuples in Python?

  • What are the key features of Python?

  • What type of language is python? Programming or scripting?

  • Python an interpreted language. Explain.

  • What is pep 8?

  • How is memory managed in Python?

  • What is namespace in Python?

  • What is PYTHONPATH?

  • What are python modules? Name some commonly used built-in modules in Python?

  • What are local variables and global variables in Python?

  • Is python case sensitive?

  • What is type conversion in Python?

  • How to install Python on Windows and set path variable?

  • Is indentation required in python?

  • What is the difference between Python Arrays and lists?

  • What are functions in Python?

  • What is __init__?

  • What is a lambda function?

  • What is self in Python?

  • How does break, continue and pass work?

  • What does [::-1] do?

  • How can you randomize the items of a list in place in Python?

  • What’s the difference between iterator and iterable?

  • How can you generate random numbers in Python?

  • What is the difference between range & xrange?

  • How do you write comments in python?

  • What is pickling and unpickling?

  • What are the generators in python?

  • How will you capitalize the first letter of string?

  • How will you convert a string to all lowercase?

  • How to comment multiple lines in python?

  • What are docstrings in Python?

  • What is the purpose of is, not and in operators?

  • What is the usage of help() and dir() function in Python?

  • Whenever Python exits, why isn’t all the memory de-allocated?

  • What is a dictionary in Python?

  • How can the ternary operators be used in python?

  • What does this mean: *args, **kwargs? And why would we use it?

  • What does len() do?

  • Explain split(), sub(), subn() methods of “re” module in Python.

  • What are negative indexes and why are they used?

  • What are Python packages?

  • How can files be deleted in Python?

  • What are the built-in types of python?

  • What advantages do NumPy arrays offer over (nested) Python lists?

  • How to add values to a python array?

  • How to remove values to a python array?

  • Does Python have OOps concepts?

  • What is the difference between deep and shallow copy?

  • How is Multithreading achieved in Python?

  • What is the process of compilation and linking in python?

  • What are Python libraries? Name a few of them.

  • What is split used for?

  • How to import modules in python?

  • Explain Inheritance in Python with an example.

  • How are classes created in Python?

  • What is monkey patching in Python?

  • Does python support multiple inheritance?

  • What is Polymorphism in Python?

  • Define encapsulation in Python?

  • How do you do data abstraction in Python?

  • Does python make use of access specifiers?

  • How to create an empty class in Python?

  • What does an object() do?

  • What is map function in Python?

  • Is python numpy better than lists?

  • What is GIL in Python language?

  • What makes the CPython different from Python?

  • What are Decorators in Python?

  • What is object interning?

  • What is @classmethod, @staticmethod, @property?

  • TCP/IP의 각 계층을 설명해주세요.

  • OSI 7계층와 TCP/IP 계층의 차이를 설명해주세요.

  • Frame, Packet, Segment, Datagram을 비교해주세요.

  • TCP와 UDP의 차이를 설명해주세요.

  • TCP와 UDP의 헤더를 비교해주세요.

  • TCP의 3-way-handshake와 4-way-handshake를 비교 설명해주세요.

  • TCP의 연결 설정 과정(3단계)과 연결 종료 과정(4단계)이 단계가 차이나는 이유가 무엇인가요?

  • 만약 Server에서 FIN 플래그를 전송하기 전에 전송한 패킷이 Routing 지연이나 패킷 유실로 인한 재전송 등으로 인해 FIN 패킷보다 늦게 도착하는 상황이 발생하면 어떻게 될까요?

  • 초기 Sequence Number인 ISN을 0부터 시작하지 않고 난수를 생성해서 설정하는 이유가 무엇인가요?

  • HTTP와 HTTPS에 대해서 설명하고 차이점에 대해 설명해주세요.

  • HTTP 요청/응답 헤더의 구조를 설명해주세요.

  • HTTP와 HTTPS 동작 과정을 비교해주세요.

  • CORS가 무엇인가요?

  • HTTP GET과 POST 메서드를 비교/설명해주세요.

  • 쿠키(Cookie)와 세션(Session)을 설명해주세요.

  • DNS가 무엇인가요?

  • REST와 RESTful의 개념을 설명하고 차이를 말해주세요.

  • 소켓(Socket)이 무엇인가요? 자신 있는 언어로 간단히 소켓 생성 예시를 보여주세요.

  • Socket.io와 WebSocket의 차이를 설명해주세요.

  • IPv4와 IPv6 차이를 설명해주세요.

  • MAC Address가 무엇인가요?

  • 라우터와 스위치, 허브의 차이를 설명해주세요.

  • SMTP가 무엇인가요?

  • 노트북으로 www.google.com에 접속을 했습니다. 요청을 보내고 받기까지의 과정을 자세히 설명해주세요.

  • 여러 네트워크 topology에 대해 간단히 소개해주세요.

  • subnet mask에 대해서 설명해주세요.

  • data encapsulation이 무엇인가요?

  • DHCP를 설명해주세요.

  • routing protocol을 몇 가지 설명해주세요. (ex. link state, distance vector)

  • 이더넷(ethernet)이 무엇인가요?

  • client와 server의 차이점을 설명해주세요.

  • delay, timing(jitter), throughput 차이를 설명해주세요.

  • 프로세스와 스레드의 차이(Process vs Thread)를 알려주세요.

  • 멀티 프로세스 대신 멀티 스레드를 사용하는 이유를 설명해주세요.

  • 캐시의 지역성에 대해 설명해주세요.

  • Thread-safe에 대해 설명해주세요. (hint: critical section)

  • 뮤텍스와 세마포어의 차이를 설명해주세요.

  • 스케줄러가 무엇이고, 단기/중기/장기로 나누는 기준에 대해 설명해주세요.

  • CPU 스케줄러인 FCFS, SJF, SRTF, Priority Scheduling, RR에 대해 간략히 설명해주세요.

  • 동기와 비동기의 차이를 설명해주세요.

  • 메모리 관리 전략에는 무엇이 있는지 간략히 설명해주세요.

  • 가상 메모리에 대해 설명해주세요.

  • 교착상태(데드락, Deadlock)의 개념과 조건을 설명해주세요.

  • 사용자 수준 스레드와 커널 수준 스레드의 차이를 설명해주세요.

  • 외부 단편화와 내부 단편화에 대해 설명해주세요.

  • Context Switching이 무엇인지 설명하고 과정을 나열해주세요.

  • Swapping에 대해 설명해주세요.

  • linked list

    • single linked list

    • double linked list

    • circular linked list

  • hash table

  • stack

  • queue

    • circular queue

  • graph

  • tree

    • binary tree

    • full binary tree

    • complete binary tree

    • bst(binary search tree)

  • heap(binary heap)

    • min heap

    • max heap

  • red-black tree

  • b+ tree

  • 시간, 공간 복잡도

  • Sort Algorithm

    • Bubble Sort

    • Selection Sort

    • Insertion Sort

    • Merge Sort

    • Heap Sort

    • Quick Sort

    • Counting Sort

    • Radix Sort

  • Divide and Conquer

  • Dynamic Programming

  • Greedy Algorithm

  • Graph

    • Graph Traversal: BFS, DFS

    • Shortest Path

      • Dijkstra

      • Floyd-Warshall

      • Bellman-Ford

    • Minimum Spanning Tree

      • Prim

      • Kruskal

    • Union-find

    • Topological sort

작성 규칙
Pull Request를 통한 피드백 요청 방법
여기
GitBook 사이트
Discussion
여기
공지
📈 통계/수학
🤖 머신러닝
🧠 딥러닝
🐍 파이썬
🌐 네트워크
🖥️ 운영체제
🗂 자료구조
🔻 알고리즘
zzsza님의 Datascience-Interview-Questions
DopplerHQ님의 awesome-interview-questions
JaeYeopHan님의 Interview_Question_for_Beginner
WeareSoft님의 tech-interview