본문 바로가기
취준 기록

[취준] 머신러닝 면접 대비 질문 리스트 (for 데이터 사이언티스트)

by davidlds 2025. 5. 17.
반응형

데이터 사이언티스트.
정말로 정보를 찾기가 힘든 직종이다.
취업하는 과정이 험난하고 막막하다.
나는 다음 세대가 더 편하게 취업을 했으면 하는 생각에 취업 준비 기록을 남긴다.

 

딥러닝 면접 대비를 위한 질문 리스트이다.

깃허브에 통합 버전이 있는데 안들어갈거 같아서 여기다 추가로 적는다.

 

원본은 여기.

여러 사이트와 깃허브를 참고했다.

그분들께 무한한 감사를 드립니다.

그런 의미에서 나의 리스트도 공공재로 쓰면 된다.

 

다만 면접 대비에서도 언급했던 것처럼 꼭 반드시 자신의 언어로 답변을 다시 준비하도록 하자.

면접 대비 글은 여기.

 

[취준] 5번째, 데이터 사이언티스트 면접 준비

데이터 사이언티스트.정말로 정보를 찾기가 힘든 직종이다.취업하는 과정이 험난하고 막막하다.나는 다음 세대가 더 편하게 취업을 했으면 하는 생각에 취업 준비 기록을 남긴다.코딩 테스트가

davidlds.tistory.com

 

면접대비 짤

 

면접

  • 자신감과 진정성

🧐 사용 방법

  • 질문에 대한 답변을 패드에 손으로 쓰며 외운다.
  • 마크다운의 목차(Outline)를 클릭하여 펼친다.
  • 질문만 보고 답변을 연습한다.

 

[머신러닝]

머신러닝이란 무엇인가

  • 데이터에서 패턴을 학습하여 새로운 데이터에 대한 예측을 하는 알고리즘을 말합니다.

머신러닝의 학습법 종류를 설명하라

  • 지도학습, 비지도학습 등이 있습니다. 지도학습은 정답이 있는 데이터로 학습하는 것으로 종류는 분류와 회귀가 있습니다. 비지도학습은 정답 없이 데이터의 패턴을 발견하는 것으로 종류는 군집화와 차원축소가 있습니다. 이외에도 강화학습, 자기지도학습 등이 있습니다.

precision, recall 공식과 개념을 설명하라

  • 프리시전은 양성으로 예측한 것 중에 실제 양성인 비율으로 TP/(TP+FP) 입니다. 리콜은 실제 양성 중에 양성이라 예측한 비율으로 TP/(TP+FN) 입니다.

precision, recall의 중요성과 trade-off의 본질은 무엇인가

  • 정성적인 의미로 프리시전은 불량이 아닌 것도 얼마나 과하게 검출을 했는가를 평가하는 것이고, 리콜은 불량인 것들 중에서 몇개를 놓쳤는가를 평가하는 것입니다.
  • 모델을 어떤 각도로 평가하는지에 따라 중요성이 달라지며 동일한 성능이라고할 때 하나를 높이면 하나는 내려갈 수 밖에 없습니다. 예를들어 모델의 성능은 같은데 불량을 놓치지 않고 싶다면 과하게 검사할 수 밖에 없는 것입니다.

F1 공식과 의미를 설명하라

  • 2*(프리시전*리콜)/(프리시전+리콜)으로 두 값의 조화평균 입니다. 두 지표가 균형있게 좋은지 평가하는 지표 입니다.

매크로 F1 스코어와 마이크로 F1 스코어 차이를 설명하라

  • 매크로 F1 스코어는 각 클래스별 F1 스코어의 평균을 구해 모든 클래스를 동등하게 비교합니다. 반면 마이크로 F1 스코어는 전체 데이터에서 프리시전과 리콜을 먼저 계산하고 F1을 구해 데이터가 더 많은 클래스에 많은 가중치를 줍니다. 소수의 클래스도 중요하면 매크로 F1 스코어를, 다수 클래스가 중요하면 마이크로 F1 스코어를 사용하면 됩니다.

선형 회귀의 기본 가정은 무엇인가

  • 선형 회귀는 선형성, 독립성, 등분산성, 정규성을 가정합니다.
  • 선형성(독립 변수와 종속 변수의 선형관계), 독립성(오차들이 서로 독립), 등분산성(오차의 분산이 일정), 정규성(오차가 정규분포를 따름)
  • (y = w1x1 + w0 + ε에서 ε가 오차. 얼마나 설명하지 못했는지를 나타냄.)

KNN과 K-means에 대하여 설명하라

  • KNN은 해당 데이터의 K개 이웃의 다수결에 의해 분류하는 지도학습이고, K-means는 랜덤으로 클러스터 중심을 정하고 클러스터에 속한 샘플의 평균값으로 중심을 변경하며 최적의 군집을 찾는 비지도학습 입니다.

DBSCAN과 GMM에 대하여 설명하라

  • DBSCAN은 특정 반경 내에 있는 점들의 갯수가 일정 수 이상이면 하나의 군집으로 만들며, GMM은 여러 개의 가우시안 분포를 섞어서 데이터를 모델링 합니다.
  • 각 모델의 하이퍼파라미터는 DBSCAN은 반경인 입실론과 최소 수인 min 이고, GMM은 군집 수 입니다.
  • 각 모델의 특징은 DBSCAN은 군집 수를 정하지 않아도 되지만 밀도가 다양하면 작동하지 않는 것이고, GMM은 데이터가 겹쳐도 잘 작동하지만 군집 수를 정해야하는 단점이 있습니다.

데이터 샘플링을 설명하라

  • 데이터의 일부를 추출하여 분석이나 학습에 사용하는 것 입니다.
  • 무작위로 선택하는 random 샘플링, 종속변수의 클래스 비율을 유지하는 stratify 샘플링, 복원추출 방식을 사용하는 부트스트랩 샘플링 등이 있습니다.

부트스트랩 샘플링에 대하여 설명하라

  • 데이터를 샘플링하고 다시 되돌려 놓는 복원추출 방식으로 여러 개의 데이터셋을 생성하는 방법입니다. 제한된 샘플 데이터로부터 더 큰 통계적 추론을 만들어낼 수 있습니다.

앙상블 학습에 대하여 설명하라

  • 보팅, 배깅, 스태킹, 부스팅 등이 있습니다. 보팅 (서로 다른 모델의 투표 결과로 예측), 배깅 (하나의 모델을 부트스트랩 샘플링한 데이터에 대하여 학습하고 결과를 집계), 스태킹 (서로 다른 모델을 부트스트랩 샘플링한 데이터에 대하여 학습하고 결과를 집계), 부스팅 (여러개의 클래시파이어가 가중치를 전달하며 순차적으로 학습).

PCA가 무엇이고 언제 사용하는가

  • 차원축소 기법 중에 하나로 데이터를 압축할 때 사용합니다. 분산을 최대한 보존하면서(데이터의 특징을 잘 설명하면서) 직교하는 새로운 축을 찾아 투영하는 방식으로 차원을 축소하는 기법입니다.

RMSE, MSE, MAE의 수식과 차이점을 설명하라

  • MSE는 오차의 제곱의 평균이고 RMSE는 MSE의 제곱근 입니다. MAE는 오차의 절대값의 평균입니다. 제곱이나 평균은 부호를 제거하기 위해서 사용하고 루트는 제곱이 실제값과 크기가 달라지기 때문에 사용합니다.

CE에 대하여 설명하라

  • (원핫 인코딩된 실제값) * 로그 (예측 확률)을 모두 더한 값으로 예측 확률 분포와 실제 정답 분포 간의 차이를 계산합니다.

Markov Chain을 설명하라

  • 현재 상태가 직전 상태에만 의존하는 확률 과정입니다. 다음 상태는 오직 현재 상태에만 영향을 받으며, 과거 상태들은 고려하지 않습니다. 날씨 예측이나 주가 예측 등에 활용됩니다.

SVM에 대하여 설명하라

  • 두 클래스 간의 경계를 찾는 알고리즘으로 마진을 최대화하는 초평면을 찾는 것을 objective로 하는 알고리즘 입니다.

SVM은 왜 반대로 차원을 확장시키는 방법을 사용하는지 설명하라

  • 저차원에서 선형 분리가 불가능한 데이터를 고차원으로 매핑하면 선형 분리가 가능한데 이를 커널 트릭이라고 합니다. 이렇게 프로젝션과 연산으로 두단계로 한다면 계산량이 늘어나지만 내적을 활용하면 한번에 효율적으로 계산할 수 있습니다.

회귀와 분류에 알맞은 matric을 선택하고 설명하라

  • 회귀는 큰 오차가 있을 경우 MSE가 적절하고 이상치가 있을 경우 MAE가 적절합니다.
  • 분류는 accuracy가 보편적으로 좋지만 데이터 불균형이 있을 경우 F1이 적절합니다.

인공신경망이 가지는 문제점을 설명하라

  • 학습 데이터의 양이 많아야하고 학습에 많은 양의 컴퓨팅 리소스를 필요로 합니다. 또한 블랙박스로 모델 해석이 어렵습니다.

ROC 커브에 대하여 설명하라

  • 이진 분류기의 성능을 시각화하는 그래프입니다. x축은 FP rate, y축은 TP rate를 나타냅니다. 곡선 아래 면적이 클수록 좋은 성능을 의미합니다.

서버가 100개 있을 때 인공신경망보다 랜덤포레스트를 선택해야 하는가

  • 랜덤포레스트가 더 적합합니다. 각 트리를 독립적으로 학습할 수 있어 병렬 처리가 자연스럽고, 서버 간 통신 부하가 적습니다. 반면 신경망은 파라미터 동기화가 필요해 분산 학습 시 통신 부하가 크고, 학습 안정성도 떨어질 수 있습니다.

cross validation에 대하여 설명하라

  • 전체 데이터를 k개의 폴드로 나누어 k-1개로 학습하고 1개로 검증하는 과정을 k번 반복하는 방법입니다. 과적합을 방지하고 모델의 일반화 성능을 평가하는데 유용합니다.

gradient boosting에 대하여 설명하라

  • 여러개의 디시전 트리를 순차적으로 학습하는 앙상블 기법입니다. 각 단계에서 이전 모델이 만든 오차를 줄이기 위해 그라디언트를 계산하고 이를 보정하는 방식으로 새 모델을 추가합니다.

XGBoost에 대하여 설명하라

  • 그라디언트 부스팅의 계산 효율성과 과적합 방지를 개선한 모델입니다. 병렬 처리와 분산 학습이 가능하고 정규화 기법을 포함하고 있습니다.

LightGBM에 대하여 설명하라

  • 그라디언트 부스팅의 속도와 메모리 사용량을 개선한 모델입니다. leaf-wise 방식으로 트리를 생성해 더 깊은 노드까지 효율적으로 학습하고 카테고리컬 데이터를 인코딩 없이 직접 사용할 수 있습니다.

좋은 모델이란 무엇인가

  • 좋은 모델은 과적합 되지 않고 잘 일반화되며 설명이 가능하고 안정적으로 잘 작동하는 모델입니다. 단순히 학습 데이터에서만 성능이 좋은 것이 아니라 실제 문제 해결에 도움이 되어야 합니다.

하이퍼 파라미터 최적화 방법을 설명하라

  • 모든 조합을 시도하는 그리드 서치, 레인지 안의 무작위 값을 선택하는 랜덤 서치, 이전 시도 결과를 바탕으로 최적 값을 예측하며 탐색하는 베이지안 옵티마이저 등이 있습니다.

feature selection의 목적과 방법을 설명하라

  • 과적합을 방지하고 계산 비용을 줄이기 위함입니다. filter 방법으로 상관계수가 높으면 소거할 수 있고, wrapper 방법으로 성능을 보고 선택할 수 있고, embedded 방법으로 학습 과정에서 소거하여 선택할 수 있습니다.

데이터 불균형이 무엇이고 해결하는 방법을 설명하라

  • 특정 클래스의 데이터가 다른 클래스에 비해 매우 적은 상황으로 오버피팅이나 언더피팅을 유발합니다. 오버샘플링, 언더샘플링, 클래스 가중치 설정 등을 통해서 해결할 수 있습니다.

다중공산성을 설명하고 문제가되는 이유는 무엇인지 설명하라

  • feature들 간에 강한 상관관계가 있는 현상입니다. feature를 많이 사용하더라도 대부분 같은 의미를 설명하기 때문에 소용이 없게 됩니다. 따라서 성능이 낮게 나올 가능성이 큽니다.

차원의 저주에 대하여 설명하라

  • 고차원의 데이터에서 차원이 증가할수록 학습에 필요한 데이터의 양이 기하급수적으로 증가하는 현상입니다. 거리 기반 알고리즘의 성능이 저하되고 데이터 밀도가 희박해져 과적합될 가능성이 큽니다. 따라서 차원축소가 필요합니다.

feature importance와 shapley vlaue의 주된 차이는 무엇이고 어떤 분석을 선호하는지 설명하라

  • feature importance는 컬럼이 데이터셋 전체적으로 얼마나 영향력이 있는지 측정하는 것이고 shapley value는 컬럼이 각 예측 하나하나에 대한 개별 기여도와 방향성을 계산합니다. 따라서 로컬과 글로벌 해석이 모두 가능한 shapley value를 더 선호합니다.

 

끝.

반응형