Scientia Conditorium

혼자공부하는 머신러닝+딥러닝/혼공단 5기 - 2주차 본문

서평/IT-강의

혼자공부하는 머신러닝+딥러닝/혼공단 5기 - 2주차

크썸 2021. 2. 4. 17:32

3-1장, k-최근접 이웃 회귀 코드 및 확인 문제
3-1절 2번 문제 출력 그래프

 

혼자공부하는 머신러닝+딥러닝/혼공단 5기 2주차 리뷰입니다.

리뷰는 3-1절까지였지만 3장 전체를 살펴보았습니다. 선형 회귀와 다중 회귀를 설명하고 이로 인해 나타날 수 있는 오버피팅(Overfitting)과 언더피팅(Underfitting)에 대해 알기 쉽게 설명해주었습니다. 진작에 이 책으로 공부를 시작할껄 이라는 생각이 계속 듭니다. 책 후반부에는 다른 생각이 들 수도 있겠지만 머신러닝 공부를 시작하기에는 최적화된 책이라고 생각합니다.

 

2주차 선택미션은 모델 파라미터(Model Parameter)에대해 설명하는 것 입니다.

책에서는 말하는 모델 파라미터는 다음과 같습니다.

  • 모델 파라미터
    • 선형 회귀가 찾은 가중치처럼 머신러닝 모델이 특성에서 학습한 파라미터
    • 선형 회귀 모델이 찾은 방정식의 계수 즉, 머신러닝 알고리즘이 찾은 값

 

이와 반대로 머신러닝 모델이 학습할 수 없고 사람이 알려줘야 하는 파라미터를 하이퍼파라미터(Hyper-Parameter)라고 합니다. 책에서는 함수와 클래스의 파라미터는 매개변수라고 하고 모델과 관련된 파라미터(모델, 하이퍼)는 그대로 파라미터라고 표현했다고 합니다. 그러나 이 2개는 엄밀하게 구분되어야 한다고 봅니다.

 

머신러닝 학습이 진행됨에 따라 값이 계속해서 변하고 이용되는 값, 즉, 가중치나 편향(Bias)가 모델 파라미터에 해당됩니다. 머신러닝/딥러닝 학습은 이 파라미터의 구조를 잘 잡는 방법과 값을 적절한 조합으로 만드는 방법을 탐구하는 것 입니다. 반대로 학습확률이나 반복 횟수처럼 머신러닝/딥러닝 모델의 구조나 학습 과정에 영향을 미치는 여러 상수값을 하이퍼-파라미터라고 합니다. 따라서 머신러닝/딥러닝 알고리즘이 학습하는 동안에는 값이 변하지 않지만 학습 결과가 마음에 들지 않으면 지속적으로 바꾸어주어야 합니다.

 

개인적으로 릿지(Ridge), 라쏘(Lasso) 모델이 내부적으로 어떻게 구현되어 있는지 궁금하지만 책에서 말하는 것처럼 수고스럽게 직접 만들지 말고 이미 구현되어있는 클래스를 사용하는게 훨씬 편하긴 하겠네요.