chatGPT가 뽑아준 50가지 머신러닝(ML)기술 면접 질문과 답변

shooting star·2023년 4월 21일
3

면접 준비

목록 보기
6/6

1. 머신러닝이란 무엇이며, 어떻게 작동하나요?

머신러닝은 인공지능의 한 분야로, 알고리즘이 데이터를 학습하여 자동으로 모델을 개선하는 기술입니다. 주로 데이터를 통해 패턴을 찾고 예측을 수행합니다.

2. 머신러닝의 주요 유형은 무엇인가요?

머신러닝의 주요 유형은 지도학습, 비지도학습, 강화학습입니다.

3.지도학습이란 무엇인가요? 예시를 들어주세요.

지도학습은 알고리즘이 주어진 입력과 출력 쌍을 이용해 학습하는 방법입니다. 예시로는 선형 회귀, 로지스틱 회귀, 서포트 벡터 머신 등이 있습니다.

4. 비지도학습이란 무엇인가요? 예시를 들어주세요.

비지도학습은 출력 값이 주어지지 않고 입력 데이터만을 이용해 학습하는 방법입니다. 예시로는 군집화, 차원 축소, 연관 규칙 학습 등이 있습니다.

5. 강화학습이란 무엇인가요? 예시를 들어주세요.

강화학습은 에이전트가 환경과 상호 작용하며 보상을 최대화하는 행동을 학습하는 방법입니다. 알파고, 자율주행 자동차 등이 예시입니다.

6. 분류와 회귀 문제의 차이점은 무엇인가요?

분류 문제는 입력 데이터를 미리 정의된 범주로 나누는 것이고, 회귀 문제는 연속적인 값을 예측하는 것입니다.

7. 머신러닝 모델에서 과적합과 과소적합을 설명해주세요.

과적합은 모델이 학습 데이터에 지나치게 적응해 새로운 데이터에 대한 성능이 저하되는 현상입니다. 과소적합은 모델이 학습 데이터에 충분히 적응하지 못해 성능이 저하되는 현상입니다.

8. 편향-분산 트레이드오프란 무엇인가요?

편향-분산 트레이드오프는 모델의 복잡도와 오차 간의 관계로, 편향이 낮으면 분산이 높아지고, 편향이 높으면 분산이 낮아지는 현상을 말합니다.

ps) 편향-분산 트레이드오프(Bias-Variance Tradeoff)는 머신러닝 모델의 일반화 성능을 이해하는 데 중요한 개념입니다. 이것은 모델의 오차를 편향(bias)과 분산(variance)으로 분해하여 분석하는 방법입니다.

편향은 모델이 학습 데이터의 본질적인 구조나 패턴을 놓치는 경향을 나타냅니다. 편향이 높은 모델은 복잡한 패턴을 포착하지 못해 과소적합(underfitting)될 수 있습니다. 반면, 분산은 모델이 학습 데이터의 작은 변동에 과도하게 민감한 경향을 나타냅니다. 분산이 높은 모델은 학습 데이터의 노이즈까지 학습해 과적합(overfitting)될 수 있습니다.

편향-분산 트레이드오프는 높은 편향과 높은 분산 사이의 균형을 찾는 것을 의미합니다. 이를 통해 모델의 일반화 성능을 최적화할 수 있습니다.

9. 머신러닝에서 정규화의 개념을 설명해주세요.

정규화는 과적합을 방지하기 위해 모델의 복잡도를 줄이는 방법입니다. 가중치를 작게 유지하거나 제거하여 모델이 일반화되도록 합니다.

ps) 정규화(regularization)는 머신러닝 모델의 과적합을 방지하기 위한 기법입니다. 정규화는 손실 함수(loss function)에 패널티 항을 추가함으로써 모델의 복잡도를 제한합니다. 이렇게 하면 모델의 가중치가 너무 커지는 것을 방지하고, 일반화 성능을 향상시킬 수 있습니다.

머신러닝에서 주로 사용되는 정규화 기법에는 L1 정규화(Lasso), L2 정규화(Ridge), 그리고 Elastic Net 정규화가 있습니다. L1 정규화는 가중치의 절대값에 비례하는 패널티를 추가하며, L2 정규화는 가중치의 제곱에 비례하는 패널티를 추가합니다. Elastic Net 정규화는 L1과 L2 정규화의 조합입니다. 각 정규화 기법은 서로 다른 특성과 장점을 가지며, 문제의 특성에 따라 적절한 정규화 기법을 선택할 수 있습니다.

10. 분류 문제에 대한 일반적인 평가 지표는 무엇인가요?

분류 문제의 평가 지표로는 정확도, 정밀도, 재현율, F1 스코어, ROC 곡선, AUC-ROC 등이 있습니다.

11. 회귀 문제에 대한 일반적인 평가 지표는 무엇인가요?

회귀 문제의 평가 지표로는 평균 제곱 오차(MSE), 평균 절대 오차(MAE), 결정계수(R^2) 등이 있습니다.

12. k-폴드 교차 검증이란 무엇인가요?

k-폴드 교차 검증은 데이터를 k개의 동일한 크기의 부분 집합으로 나누고, 각각을 테스트 데이터로 사용하여 모델을 평가하는 방법입니다.

13. 머신러닝에서 학습, 검증, 테스트 세트의 역할은 무엇인가요?

학습 세트는 모델을 학습하는 데 사용되고, 검증 세트는 모델의 하이퍼파라미터를 조정하는 데 사용되며, 테스트 세트는 모델의 최종 성능을 평가하는 데 사용됩니다.

14. 혼동 행렬의 목적을 설명해주세요.

혼동 행렬은 분류 문제의 결과를 행렬 형태로 표현하여 모델의 성능을 평가하는 도구입니다. 이를 통해 진양성, 진음성, 위양성, 위음성의 개수를 확인할 수 있습니다.

15. 정밀도, 재현율, F1 스코어의 차이점은 무엇인가요?

정밀도는 모델이 양성으로 예측한 것 중 실제 양성인 비율을 나타내고, 재현율은 실제 양성 중 모델이 양성으로 예측한 비율을 나타냅니다. F1 스코어는 정밀도와 재현율의 조화 평균입니다.

16. ROC 곡선과 AUC-ROC 점수란 무엇인가요?

ROC(Receiver Operating Characteristic) 곡선은 민감도(재현율)과 특이도(1-위양성률)를 각각 x축과 y축으로 사용하여 모델의 성능을 그래프로 표현한 것입니다. AUC-ROC(Area Under the ROC Curve) 점수는 ROC 곡선 아래의 면적을 나타내며, 0과 1 사이의 값을 가집니다. 값이 높을수록 모델의 성능이 좋다고 평가할 수 있습니다.

17. k-최근접 이웃(KNN) 알고리즘을 설명해주세요.

k-최근접 이웃 알고리즘은 새로운 데이터 포인트를 주변 k개의 가장 가까운 이웃 데이터 포인트의 레이블을 기반으로 분류하거나 예측하는 방법입니다.

18. 의사결정트리의 작동 원리를 설명해주세요.

의사결정트리는 입력 데이터를 분할하여 가장 순수한 하위 집합을 생성하는 데 사용되는 분류 및 회귀 기법입니다. 트리의 노드는 조건에 따라 분할되고, 잎 노드는 최종 예측 값을 나타냅니다.

19. 앙상블 방법의 배깅과 부스팅의 차이점은 무엇인가요?

배깅은 병렬적으로 여러 개의 독립적인 모델을 학습하여 결과를 집계하는 방법입니다. 부스팅은 순차적으로 약한 모델을 학습하며 이전 모델의 오차를 개선하는 방법입니다.

20. 랜덤 포레스트 알고리즘을 설명해주세요.

랜덤 포레스트는 여러 개의 의사결정트리를 학습하고, 각 트리의 예측 결과를 집계하여 최종 결과를 도출하는 앙상블 방법입니다.

21. 그래디언트 부스팅 머신(GBM) 알고리즘을 설명해주세요.

그래디언트 부스팅 머신은 순차적으로 약한 모델을 학습하며 이전 모델의 잔차를 최소화하는 방식으로 개선해 나가는 앙상블 방법입니다.

22. 서포트 벡터 머신(SVM)에 대해 설명해주세요.

서포트 벡터 머신은 두 개의 범주를 분류할 때 마진이 최대가 되는 초평면을 찾는 알고리즘입니다.

23. SVM에서 커널 함수란 무엇인가요? 예시를 들어주세요.

커널 함수는 데이터를 고차원 공간으로 변환하는 함수입니다. 이를 통해 비선형 문제를 해결할 수 있습니다. 예시로는 선형 커널, 다항 커널, RBF 커널 등이 있습니다.

24. SVM에서 하드 마진과 소프트 마진의 차이점은 무엇인가요?

하드 마진은 모든 데이터 포인트가 올바르게 분류되도록 마진을 최대화하는 방식입니다. 소프트 마진은 일부 오분류를 허용하면서 마진을 최대화하는 방식으로, 과적합을 방지할 수 있습니다.

25. 신경망과 딥러닝의 관계를 설명해주세요.

신경망은 인공 신경망을 기반으로 하는 머신러닝 모델입니다. 딥러닝은 신경망의 발전된 형태로, 여러 개의 은닉층을 가진 심층 신경망을 사용하여 복잡한 데이터를 학습하는 방법입니다.

26. 활성화 함수의 역할과 예시를 설명해주세요.

활성화 함수는 인공 신경망의 뉴런에서 입력 신호의 가중치 합에 적용되는 비선형 함수입니다. 이를 통해 신경망이 비선형 문제를 해결할 수 있습니다. 예시로는 시그모이드, ReLU, 하이퍼볼릭 탄젠트 등이 있습니다.

27. 역전파 알고리즘의 원리를 설명해주세요.

역전파 알고리즘은 인공 신경망에서 가중치를 최적화하기 위한 학습 방법입니다. 출력층에서부터 입력층 방향으로 오차를 계산하고, 그래디언트를 통해 가중치를 업데이트합니다.

28. 드롭아웃이란 무엇이며, 어떤 목적으로 사용되나요?

드롭아웃은 학습 과정에서 일부 뉴런을 무작위로 비활성화하는 방법입니다. 이를 통해 모델의 과적합을 방지하고 일반화 성능을 향상시킵니다.

29. 합성곱 신경망(CNN)의 구조와 원리를 설명해주세요.

합성곱 신경망은 주로 이미지 인식, 분류 등의 문제를 해결하기 위해 사용되는 딥러닝 모델입니다. CNN은 합성곱층, 활성화 함수, 풀링층, 완전연결층 등으로 구성되며, 공간적 구조를 가진 데이터를 처리하는 데 효과적입니다.

30. CNN에서 합성곱층의 역할은 무엇인가요?

합성곱층은 입력 이미지에 필터를 적용하여 특징 맵을 추출하는 역할을 합니다. 이를 통해 이미지의 공간 정보와 지역적 특성을 보존할 수 있습니다.

31. 풀링층의 역할과 종류를 설명해주세요.

풀링층은 특징 맵의 크기를 줄이는 역할을 하며, 연산량을 감소시키고 과적합을 방지합니다. 종류로는 최대 풀링(max pooling)과 평균 풀링(average pooling)이 있습니다.

32. 순환 신경망(RNN)이란 무엇이며, 어떤 문제에 사용되나요?

순환 신경망은 순차적인 데이터를 처리하기 위한 신경망 구조입니다. RNN은 이전 시점의 정보를 현재 시점의 입력과 함께 처리할 수 있습니다. 주로 시계열 데이터 분석, 자연어 처리 등의 문제에 사용됩니다.

33. LSTM과 GRU의 차이점은 무엇인가요?

LSTM(Long Short-Term Memory)과 GRU(Gated Recurrent Unit)은 RNN의 변형 구조로, 장기 의존성 문제를 해결하기 위해 설계되었습니다. LSTM은 입력, 출력, 삭제 게이트를 가지며, GRU는 업데이트 게이트와 리셋 게이트를 가집니다. GRU는 LSTM에 비해 더 간단한 구조를 가지고 있습니다.

34. 자연어 처리(NLP)에서 사용되는 임베딩이란 무엇인가요?

임베딩은 단어, 문장 등의 자연어 요소를 고정된 크기의 벡터로 변환하는 방법입니다. 이를 통해 연산 가능한 형태로 데이터를 변환하고, 단어 간의 유사성을 계산할 수 있습니다.

35. 주요 자연어 처리(NLP) 기법과 예시를 설명해주세요.

주요 NLP 기법으로는 형태소 분석, 개체명 인식, 품사 태깅, 문장 구문 분석, 감정 분석, 기계 번역 등이 있습니다

36. 트랜스포머(Transformer) 모델이란 무엇이며, 어떤 특징이 있나요?

트랜스포머는 자연어 처리를 위한 딥러닝 모델로, RNN과 CNN을 사용하지 않고 자가 어텐션(self-attention) 메커니즘을 사용합니다. 병렬 처리가 가능하며, 긴 시퀀스 데이터에서도 장기 의존성 문제를 해결하는 데 효과적입니다.

37. BERT 모델이란 무엇이며, 어떻게 학습되나요?

BERT(Bidirectional Encoder Representations from Transformers)는 트랜스포머 기반의 언어 모델로, 양방향 인코더를 사용하여 문맥을 고려한 단어 임베딩을 생성합니다. BERT는 마스크된 언어 모델링(masked language modeling)과 다음 문장 예측(next sentence prediction)을 사용하여 미리 학습된 후, 다양한 NLP 작업에 맞게 미세 조정(fine-tuning)됩니다.

38. GPT 모델이란 무엇이며, 어떻게 작동하나요?

GPT(Generative Pre-trained Transformer)는 트랜스포머 기반의 언어 모델로, 단방향 인코더를 사용하여 주어진 문맥에서 다음 단어를 생성합니다. GPT는 미리 학습된 후, 특정 작업에 맞게 미세 조정(fine-tuning)되어 사용됩니다.

39. 토큰화(tokenization)란 무엇이며, 어떤 종류가 있나요?

토큰화는 텍스트를 의미 있는 단위(토큰)로 분리하는 과정입니다. 주요 토큰화 방법으로는 단어 토큰화, 문장 토큰화, 형태소 토큰화, n-그램 토큰화 등이 있습니다.

40. 스태킹(stacking)이란 무엇인가요?

스태킹은 여러 개의 머신러닝 모델의 예측 결과를 입력으로 사용하여 새로운 메타 모델(meta model)을 학습하는 앙상블 기법입니다. 이를 통해 개별 모델의 성능을 결합하여 더 나은 성능을 얻을 수 있습니다.

41. 하이퍼파라미터 최적화 방법에는 어떤 것들이 있나요?

그리드 탐색(grid search), 랜덤 탐색(random search), 베이지안 최적화(Bayesian optimization), 유전 알고리즘(genetic algorithms), 그리고 최적화 알고리즘 기반 방법(예: TPE, Hyperband) 등이 있습니다. 이들 방법은 머신러닝 모델의 하이퍼파라미터를 최적화하기 위해 사용되며, 각기 다른 탐색 전략과 특성을 가집니다.

42. 특성 선택(feature selection)이란 무엇이며, 어떤 방법들이 있나요?

특성 선택은 머신러닝 모델 학습에 영향을 미치는 중요한 특성만 선택하여 차원을 축소하는 과정입니다. 주요 특성 선택 방법으로는 필터 방법(filter methods), 래퍼 방법(wrapper methods), 임베디드 방법(embedded methods) 등이 있습니다.

43. 과적합(overfitting)과 과소적합(underfitting)의 차이점은 무엇인가요?

과적합은 모델이 학습 데이터에 너무 잘 맞아서 테스트 데이터나 실제 데이터에 대한 성능이 떨어지는 현상입니다. 과소적합은 모델이 학습 데이터에도 잘 맞지 않아서 테스트 데이터나 실제 데이터에 대한 성능이 낮은 현상입니다. 이 두 현상은 모두 모델의 일반화 성능을 저하시킵니다.

44. 배치 정규화(batch normalization)의 원리와 장점을 설명해주세요.

배치 정규화는 각 층의 입력 분포를 정규화하여 학습을 안정화하는 방법입니다. 이를 통해 학습 속도를 높이고, 가중치 초기화에 덜 민감해지며, 더 큰 학습률을 사용할 수 있습니다. 또한, 일정한 정규화 효과로 인해 과적합을 완화할 수 있습니다.

45. 오토인코더(autoencoder)란 무엇이며, 어떤 용도로 사용되나요?

오토인코더는 비지도 학습 방식의 신경망으로, 입력 데이터를 압축한 후 복원하는 과정을 통해 데이터의 특징을 학습합니다. 주로 차원 축소, 특성 추출, 노이즈 제거, 생성 모델 등의 용도로 사용됩니다.

46. GAN(Generative Adversarial Network)의 원리와 특징을 설명해주세요.

GAN은 생성적 적대 신경망으로, 생성자(Generator)와 판별자(Discriminator)라는 두 개의 신경망이 경쟁하면서 학습하는 구조입니다. 생성자는 실제 데이터와 유사한 가짜 데이터를 생성하려고 하며, 판별자는 생성된 가짜 데이터와 실제 데이터를 구별하려고 합니다. 이 과정을 통해 생성자는 점차 실제 데이터와 구별이 어려운 가짜 데이터를 생성하게 되고, 판별자는 더 정확하게 데이터를 구별하게 됩니다. GAN은 이미지 생성, 스타일 변환, 이미지-텍스트 변환 등 다양한 응용 분야에서 사용되고 있습니다.

47. 강화학습(Reinforcement Learning)이란 무엇이며, 어떤 특징이 있나요?

강화학습은 에이전트(agent)가 환경(environment)과 상호작용하며 보상(reward)을 최대화하는 행동(action)을 학습하는 머신러닝 방법입니다. 강화학습은 시행착오를 통해 학습하며, 환경의 상태(state)와 행동에 따른 보상 함수를 기반으로 최적의 정책(policy)을 찾습니다. 주로 게임, 로봇 제어, 자율주행 등 다양한 응용 분야에서 사용됩니다.

48. Q-러닝(Q-learning)과 딥 Q-네트워크(DQN)의 차이점은 무엇인가요?

Q-러닝은 강화학습의 일종으로, 상태-행동 쌍에 대한 가치함수(Q-value)를 학습하는 방법입니다. 딥 Q-네트워크(DQN)는 Q-러닝의 발전된 형태로, 복잡한 상태 공간을 처리하기 위해 신경망을 사용하여 Q-value를 근사합니다. DQN은 경험 리플레이(experience replay)와 타겟 네트워크(target network) 등의 기법을 사용하여 학습의 안정성을 높입니다.

49. 모델 기반 강화학습(model-based reinforcement learning)과 모델 프리 강화학습(model-free reinforcement learning)의 차이점은 무엇인가요?

모델 기반 강화학습은 환경의 모델을 학습하고, 이를 기반으로 정책을 개선하는 방법입니다. 이 방법은 환경의 모델을 사용해 시뮬레이션을 통한 계획을 수행할 수 있으나, 모델의 정확도에 따라 성능이 영향을 받습니다. 반면, 모델 프리 강화학습은 환경의 모델을 사용하지 않고, 직접 상호작용을 통해 정책을 개선합니다. 이 방법은 모델의 정확도에 영향을 받지 않지만, 효율적인 학습을 위해 많은 시행착오가 필요할 수 있습니다.

50. 시계열 예측(time series forecasting)에서 사용되는 주요 머신러닝 기법을 설명해주세요.

시계열 예측은 과거의 시계열 데이터를 바탕으로 미래의 값을 예측하는 문제입니다. 주요 시계열 예측 기법으로는 ARIMA, 상태 공간 모델(state space models), 지수 평활(exponential smoothing) 등의 통계적 기법과, 머신러닝 기법 중에서도 회귀 분석(regression analysis), 서포트 벡터 머신(Support Vector Machines, SVM), 인공신경망(Artificial Neural Networks, ANN), 순환신경망(Recurrent Neural Networks, RNN), LSTM(Long Short-Term Memory), 그리고 트랜스포머(Transformer) 등이 사용됩니다. 이러한 기법들은 각각의 특성과 가정에 따라 다양한 시계열 데이터의 패턴을 예측할 수 있으며, 실제 상황에 따라 적절한 기법을 선택하여 사용할 수 있습니다.

0개의 댓글