Machine Learning/Advanced (hands on machine learning)

1. 한눈에 보는 머신러닝

jwjwvison 2021. 5. 14. 19:41

1. 머신러닝이란?

 머신러닝은 데이터로부터 학습할 수 있는 시스템을 만드는 것이다. 학습이란 어떤 작업에서 주어진 성능 지표가 더 나아지는 것을 의미한다.

 

2. 레이블된 훈련 세트란?

 각 샘플에 대해 원하는 정답(레이블)을 담고 있는 훈련 세트이다.

 

3. 가장 널리 사용되는 지도 학습 작업 두 가지

 회귀, 분류

 

4. 보편적인 비지도 학습 작업 네 가지 

 군집, 시각화, 차원 축소, 연관 규칙 학습

 

5. 사전 정보가 없는 여러 지형에서 로봇을 걸어가게 하려면 어떤 종류의 머신러닝 알고리즘을 사용할까?

 알려지지 않은 지형을 탐험하는 로봇을 학습시키는 가장 좋은 방법은 강화학습이다.

 

6. 고객을 여러 그룹으로 분할하려면 어떤 알고리즘을 사용해야 할까?

 만약 그룹을 어떻게 정의할지 모른다면 비슷한 고객끼리 군집으로 나누기 위해 군집 알고리즘(비지도 학습)을 사용할 수 있다. 그러나 어떤 그룹이 있어야 할지 안다면 분류 알고리즘(지도 학습)에 각 그룹에 대한 샘플을 주입한다. 그러면 알고리즘이 전체 고객을 이런 그룹으로 분류하게 될 것이다.

 

7. 온라인 학습 시스템이란

 배치 학습 시스템과 달리 점진적으로 학습할 수 있다. 이 방식은 변화하는 데이터와 자율 시스템에 빠르게 적응하고 매우 많은 양의 데이터를 훈현시킬 수 있다.

 

8. 모델 파라미터와 학습 알고리즘의 하이퍼파라미터 사이에는 어떤 차이가 있나

 모델은 하나 이상의 파라미터(예를 들면 선형 모델의 기울기)를 사용해 새로운 샘플이 주어지면 무엇을 예측할지 결정한다. 학습 알고리즘은 모델이 새로운 샘플에 잘 일반화되도록 이런 파라미터들의 최적값을 찾는다. 하이퍼파라미터는 모델이 아니라 이런 학습 알고리즘 자체의 파라미터이다(예를 들면 적용할 규제의 정도).

 

9. 모델이 훈련 데이터에서의 성능은 좋지만 새로운 샘플에서의 일반화 성능이 나쁘다면 어떤 문제가 있는것인가? 가능한 해결책 세가지는?

 모델이 훈련 데이터에서는 잘 작동하지만 새로운 샘플에서는 형편없다면 이 모델은 훈련 데이터에 과대적합되었을 가능성이 높다. 과대적합에 대한 해결책은 더 많은 데이터를 모으거나, 모델을 단순화하거나(간단한 알고리즘, 특성이나 파라미터의 수를 줄이기, 모델에 규제를 추가), 훈련 데이터에 있는 잡음을 감소시키는 것이다.

 

10. 테스트 세트가 무엇이고 왜 사용해야 하는가?

 테스트 세트는 실전에 배치되기 전에 모델이 새로운 샘플에 대해 만들 일반화 오차를 추정하기 위해 사용한다.

 

11. 검증 세트의 목적은 무엇인가?

 검증 세트는 모델을 비교하는 데 사용된다. 이를 사용해 가장 좋은 모델을 고르고 하이퍼파라미터를 튜닝한다.

 

12. 테스트 세트를 사용해 하이퍼파라미터를 튜닝하면 어떤 문제가 생기는가?

 테스트 세트를 사용해 하이퍼파라미터를 튜닝하면 테스트 세트에 과대적합될 위험이 있고 일반화 오차를 낙관적으로 측정하게 된다(모델을 출시하면 기대한 것보다 나쁜 성능을 낼 것이다).