fbpx
머신러닝 기초 질문 모음

Published 2018-12-25  |  Updated 2018-12-27

Transformer, Inception, XGBoost, … 이름만 들어도 세련되고 멋진 머신러닝 알고리즘을 익히는 것도 중요하지만, 때로는 간단해 보이는 기초를 제대로 이해하는 것이 훨씬 중요할 수 있습니다. 기초를 점검할 수 있는 질문들을 정리해 보았으니 천천히 훑어보며 자신의 이해를 체크해보세요. 🙂

머신러닝 모형의 학습 (Training)과 선택 (Selection), 평가 (Assessment)에 대한 다음 물음들에 답하여라.

  • 머신러닝, 그 중에서도 지도학습의 목표를 한 문장으로 설명하라. 키워드 : 일반화 (Generalization)
  • 위 목표에 비추어 볼 때, Empirical Risk Minimization / Hypothesis Space로의 제약 (Restriction) 시 발생할 수 있는 문제에 대해 각각 설명하라.
  • Training Error가 가장 낮은 모형을 선택하는 과정을 무엇이라고 부르는가?
  • Training Error가 가장 낮은 모형을 예측에 사용하면 발생할 수 있는 문제는 무엇인가?
  • 위 문제를 해결할 수 있는가?
  • Training Set 이외에 Validation Set을 두는 이유는 무엇인가?
  • Validation Error가 가장 낮은 모형을 선택하는 과정을 무엇이라고 부르는가?
  • Validation Error가 가장 낮은 모형을 예측에 사용하면 발생할 수 있는 문제는 무엇인가?
  • 위 문제를 해결할 수 있는가?
  • Training Error와 Validation Error를 낮추는 모형을 찾는 이유는 무엇인가? 
  • Training Set과 Validation Set을 표준화 (Normalization) 하는 올바른 방법에 대해 논하라.
  • Training Error와 Validation Error가 어떤 Error와 비슷하기를 낙관하는가?
  • Training Set과 Validation Set 이외에 Test Set을 두는 이유는 무엇인가?
  • 머신러닝 모델링의 세 가지 단계, Training / Selection / Assessment에 대해 설명하라. 
  • Test Set이 오염(Corrupt) 되었다는 의미는 무엇인가?
  • Model Selection에 Test Set을 이용해도 되는가?
  • K-Fold Cross Validation에 대해 설명하라. 이를 사용하는 이유가 무엇이고, 주로 언제 사용하는가?

한 줄 요약 : 어떠한 형태로든 Training에 Validation Set을 사용하지 말고, Validation에 Test Set을 사용하지 말아라. (모든 것을 망치기 싫다면 …)

과적합 (Overfitting)에 대한 다음 물음들에 대해 답하여라.

  • Overfitting이 발생했다는 의미가 무엇인지 정량적으로 설명하라.
  • Overfitting이 발생했다는 의미가 무엇인지 정성적으로 설명하라.
  • 앞서 생각했던 머신러닝의 목표를 달성하기 위해 Overfitting을 해결해야 하는 이유를 설명하라.
  • Overfitting에 가장 큰 영향을 미치는 요인을 2개 찾아라.
  • Overfitting은 왜 자연스러운 현상인가?
  • Overfitting이 발생했을 때는 어떻게 대처해야 하는가?
  • 모형이 Training Set에 Overfit 되었다는 의미가 무엇인가?
  • 모형이 Validation Set에 Overfit 되었다는 의미가 무엇인가?
  • “모형이 Test Set에 Overfit 되었다.” 라는 말이 성립할 수 있는가? 그 이유는 무엇인가?

VC 부등식에 대한 다음 물음들에 대해 답하여라.

  • VC 부등식에 대해 설명하라. VC Bound란 무엇인가?
  • VC 부등식에서, Hypothesis Space의 크기를 감소시킬 때 발생하는 현상에 대해 설명하라.
  • Structural Risk Minimization이란 무엇인가? ERM과 어떻게 다른가?

편향과 분산 (Bias – Variance)에 대한 다음 물음들에 대해 답하여라.

  • 편향과 분산의 분해 (Decomposition)와 절충 관계 (Tradeoff)에 대해 설명하라.
  • 높은 분산을 가지는 모형을 학습시킬 때 과적합이 발생하기 쉬운 이유에 대해 논하라.
  • 분산을 낮추기 위한 방법에는 어떤 것들이 있는가?
  • 모형에 배깅 (Bagging)을 적용했을 때의 분산을 계산하고,  랜덤 포레스트가 어떤 방식으로 분산을 낮추는지 정량적으로 설명하라.

제약화 (Regularization)에 대한 다음 물음들에 대해 답하여라.

  • 많은 변수가 포함된 모형이 가장 좋다고 할 수 있는가? 아니라면 그 이유는 무엇인가?
  • 전진 선택 (Forward Selection) 법과 후진 제거 (Backward Elimination) 법에 대해 설명하라.
  • Regularization이란 무엇인가? 변수 선택과 Regularization의 관계에 대해 설명하라.
  • L1 Regularization과 L2 Regularization에 대해 설명하라.

아래 그래프를 보고 물음에 답하여라. (출처 : Deep Learning Book)

  • 어느 지점 이후에서 Overfitting이 발생했다고 이야기 할 수 있는가?
  • Generalization Gap이란 무엇인가?
  • Early Stopping이란 무엇인가? Early Stopping의 맥락에서 x축에 들어가야 할 변수는 무엇이겠는가?
  • 위 그래프에서 Capacity 대신 x축에 들어갈 수 있는 변수들을 최대한 많이 적어라.
  • Generalization Error를 직접 측정할 수 있는가? 만약 아니라면 어떻게 추정할 수 있는가?

아래 그림들은 10개 데이터에 대해 M차 다항함수를 학습시킨 결과이다. 그림 1은 학습된 함수들의 개형을, 그림 2는 Training / Test error를, 그림 3은 학습된 Parameter들의 값을 표로 나타낸 것이다. 이를 보고 다음 물음들에 답하여라. (출처 : Pattern Recognition and Machine Learning)

  • 그림 1에서 가장 적절한 M의 값을 찾고 그 이유를 설명하라.
  • 그림 3을 보고, L1 / L2 Regularization의 적용이 필요해 보이는 상황과 그 이유에 대해 설명하라.
  • 그림 2에서 Test Error가 가장 낮은 모형을 선택해도 되는가?
  • Hyperparameter란 무엇인가? 위 그림들에서 Hyperparameter와 Parameter는 어떤 것들인지 찾아라.

Evaluation Metric에 대한 다음 물음들에 답하여라.

  • Evaluation Metric이 필요한 두 가지 이유에 대해 설명하라.
  • 어떤 Evaluation Metric을 사용할지는 누가 정하는가?
  • 어떤 Evaluation Metric을 사용할지는 Hyperparameter의 일종이라고 할 수 있는가?
  • 회귀 문제에서는 어떤 Evaluation Metric들을 사용하는가?
  • 이진 분류 문제에서는 어떤 Evaluation Metric들을 사용하는가?
  • 다중 분류 문제에서는 어떤 Evaluation Metric들을 사용하는가?
  • 객체 탐지 문제에서는 어떤 Evaluation Metric을 사용하는지 찾아보아라.
  • 기계 번역 문제에서는 어떤 Evaluation Metric을 사용하는지 찾아보아라.
  • R Square에 대해 설명하라.
  • Confusion Matrix란 무엇인가?
  • Accuracy / Precision / Recall / F-Score에 대해 설명하라.
  • Class Imbalance 문제에 대해 설명하라.
  • Accuracy를 사용하는 것은 언제 문제가 될 수 있는가?
  • Precision – Recall Curve를 그리는 방법에 대해 설명하라.
  • 아래 그래프에서 모형 A와 모형 B 중 어떤 모형의 PR CURVE가 더 우수한지 판단하라.

어떤 데이터의 이진 분류를 위해 양성일 확률을 예측하는 두 모형을 학습시키고, Threshold를 0.5로 설정하여 Confusion Matrix를 구해보았다. 결과를 보고 두 모형 중 하나를 선택하려고 하는 상황이라고 할 때, 다음 물음에 답하여라.

  • Training / Validation / Test Set 중 어느 데이터에 대한 Confusion Matrix인가?
  • Accuracy를 기준으로 판단하였을 때, 어떤 모형을 선택해야 하는가? Precision과 Recall, F-Score를 기준으로 판단하는 경우에는 각각 어떤 모형을 선택해야 하는가?
  • 만약 Threshold를 0.5보다 더 높힌다면 Precision과 Recall, F-Score는 어떻게 변할지 설명하라. Precision과 Recall의 관계에 대해 설명하라.
  • 최적의 Threshold를 정하는 방법에 대해 논하라. Threshold를 정하지 않은 상태에서 가장 좋은 모형을 찾고싶다면 어떤 Evaluation Metric을 사용해야 하는가?
  • 수업에서 다루지 않았던 이진 분류의 Evaluation Metric을 하나 찾고, 그것을 기준으로 선택해 보아라.

다음 상황들에서 발생할 수 있는 문제들에 대해 생각해보아라.

  • Model Selection 과정을 마친 후, 선택된 모형을 Test Set을 이용해 평가했더니 만족할만한 수치가 나오지 않았다. 그래서 더 많은 모형을 Training 시킨 후 Model Selection 과정을 반복해 선택된 모형을 평가했더니 만족할만한 수치가 나왔다.  이렇게 Assessment 과정까지 마친 후, 선택된 Model의 Generalization Error는 두 번째 Test Error와 비슷할 것이라는 결론을 내렸다.
  • 2011-2018년의 주가 데이터를 이용해 예측 모델링을 하기 위해, Train / Validation / Test를 랜덤하게 8:1:1로 나누어 모형을 만들었다. 그랬더니 Test Set에 대해 높은 예측 성능을 보인다. (읽을거리 : Backtesting)
  • 웹에서 고해상도 이미지를 크롤링해 이미지 분류 모형을 만들었다. 이 모형을 모바일 기기에 탑재하여 상대적으로 해상도가 낮은 이미지를 분류할 때 사용할 것이다.
  • 서울시 전체의 데이터를 이용해 교통량을 예측하는 모형을 만들었다. 이 모형을 강남역 부근의 교통량을 예측하는데 사용할 것이다.

최대 우도 추정법 (Maximum Likelihood Estimation)에 대한 다음 물음들에 답하여라.

  • 학습된 두 모형의 의미에 대해 설명하라. 어떤 모형이 데이터, 즉 현상을 설명하는데 더 합리적인 모형인가?
  • 데이터가 적은 상태에서 MLE를 사용하는 것의 문제점에 대해 설명하고, MLE와 Overfitting과의 관계를 설명하라.
  • 베이즈 정리를 이용하여 MAP는 p(Data|Model)*p(Model)를 최대화하는 모형을 찾는것과 동치임을 보여라.
  • 상대적으로 데이터의 변동에 덜 민감한 학습 방식은 무엇이고 그 이유는 무엇인가?
이전 페이지로
홈으로
2018-12-31T18:36:15+00:00