Machine Learning(12)
-
[models] 회귀분석(Regression Analysis)과 최소자승법(Least Square Method)
이번 글에서는 머신러닝 모델 중 가장 기초적인 모델이라고 할 수 있는 회귀분석에 대해 알아보겠습니다. 회귀분석은 가장 기초적이지만 중요한 내용을 많이 포함하고 있는 모델이기도 합니다. 독립변수 $X$와 종속변수 $Y$ 그리고 오 차 항 $\epsilon$이 평균이 0이고, 분산이 $\sigma^2$인 정규분포를 따르고 있다고 가정할 때, 우리가 풀고자 하는 문제를 다음과 같이 나타낼 수 있습니다. $Y=\beta_0 + \beta_1*X+\epsilon~,~where~\epsilon \sim N(0,\sigma^2)$ 이와 같이 독립변수와 종속변수가 선형의 관계를 가질 때, 가중치 $\beta_0$, $\beta_1$을 찾는 문제를 선형 회귀분석이라고 정의합니다. 이 가중치들을 어떻게 찾을 수 있을까요?..
2021.07.12 -
[general] 3. 과대적합, 과소적합(Over-fitting, Under-fitting)
이전 글([Machine Learning] - 2-1. 편향-분산 절충 관계 증명(Bias-Variance Trade-off Proof))에서 모델을 학습하는 과정에서 사용되는 식을 예측모델의 편향과 분산으로 나눌 수 있음을 증명하였습니다. 이번 글에서는 예측모델 관점에서의 과대 적합과 과소 적합에 대해 알아보겠습니다. 우리가 예측모델을 학습시킬 때, 왼쪽 상단의 모습처럼 분산도 낮고 편향도 낮은 모델을 학습시키는 것이 가장 이상적인 그림입니다. 하지만, 예측모델의 편향과 분산의 합은 정해져 있기 때문에, 둘 간의 절충 관계가 생기게 됩니다. 오른쪽 상단과 같이 훈련 데이터에 대해 편향은 낮지만, 분산이 높은 경우를 가리켜 "모델이 훈련 데이터에 과대 적합되었다"라고 말합니다. 즉, 훈련 데이터의 정답은..
2021.07.11 -
[general] 2-1. 편향-분산 절충관계 증명(Bias-Variance Trade-off Proof)
이전 글([Machine Learning] - 2. 모델 학습(How can we train a model?))에서 모델이 학습하는 과정을 어떻게 수식으로 나타낼 수 있는지에 대해 알아보았습니다. 또한 그 수식을 예측모델의 편향과 분산으로 나눌 수 있음을 보았습니다. 이번 글에서는 그 수식을 증명하여 수식의 의미를 조금 더 생각해보겠습니다. 우리가 예측하고자 하는 종속변수 $Y$와 그의 예측 값 $\hat {Y}$간의 차이를 줄이면서 모델을 학습하게 된다고 하였고, 그것을 수식으로 나타내면 다음과 같습니다. $E[(Y-\hat {Y})^2]=\mathbb {E}[f(X)+\epsilon-\hat {f}(X))^2]~~~~\cdots(1) \\ ~~~~~~~~~~~~~~~~~~~~~=\mathbb {E}[..
2021.07.11 -
[general] 2. 모델 학습(How can we train a model?)
이전 글에서 머신러닝이 무엇이고, 어떻게 분류할 수 있는지에 대해 알아보았습니다. 이번 글에서는 머신러닝 모델의 학습을 어떻게 수학적으로 나타낼 수 있는지 알아보겠습니다. 우리가 예측하기를 원하는 종속변수($Y$)와 $p$개의 다른 설명변수 $X_1$, $X_2$,... , $X_p$가 관찰된다고 해보겠습니다. $Y$와 $X=(X_1,~X_2,~...,~X_p)$ 사이에 어떤 상관관계가 있다고 가정하면, 다음과 같은 일반적인 형태로 나타낼 수 있습니다. $Y=f(X)+\epsilon$ 여기서 $f$는 $X_1,~...,~X_p$에 대한 알려지지 않은 어떤 고정 함수이고, $\epsilon$은 랜덤 오 차 항으로 측정되지 않는 변수들을 포함할 수 있습니다. 오 차 항은 $X$와 독립적이며, 평균은 0이라고..
2021.07.11 -
[general] 1. 지도학습, 비지도학습, 자기지도 학습, 강화학습(Supervised, Un-Supervised, Self-Supervised, Reinforcement Learning)
머신러닝 방법을 통해 만든 모델들은 크게 세 가지로 분류할 수 있습니다. 첫 번째는 지도 학습(Supervised learning) 모델입니다. 지도 학습 모델은 훈련용 데이터(Train dataset)와 정답 레이블이 같이 주어져서 각 데이터에 해당하는 정답을 학습할 수 있도록 모델을 구성하는 방법입니다. 우리가 생각할 수 있는 일반적인 머신러닝 모델이 지도 학습모델이라고 할 수 있습니다. 예를 들어, 스팸메일 분류, 의료영상에서의 양, 악성 판단, 거래기록으로부터의 이상 거래 탐지 등을 판단하는 모델에서 쓰일 수 있습니다. 지도 학습모델은 모델의 결과와 비교할 수 있는 정답 레이블이 주어지기 때문에, 비교적 높은 성능의 모델을 만들 수 있는 장점이 있습니다. 하지만, 정답 레이블을 만드는 것은 사람이..
2021.07.11 -
[general] 0. 머신러닝(Machine Learning)
초창기 지능형 애플리케이션들은 데이터를 처리하고 사용자의 입력을 다루는데 하드 코딩된 "if"와 "else" 명령을 사용하는 시스템이었습니다. 의심되는 메일을 스팸함으로 보내야 하는 스팸 필터를 생각해보겠습니다. 스팸으로 의심되는 단어들로 블랙리스트를 만들어 처리할 수 있을 것입니다. 이 방식은 사람이 직접 스팸으로 의심되는 단어들을 선정하여 그 단어들이 포함된 메일을 스팸으로 분류하는 방식입니다. 이 방법을 활용하면 대부분의 스팸메일들을 처리할 수 있을 것입니다. 하지만, 결정 규칙을 수동으로 만드는 것(스팸으로 의심되는 단어들을 선정)은 계속 결정규칙이 변하거나 결정규칙의 수가 너무 많을 때 잘 작동하지 않을 수도 있습니다. 따라서 이 모델을 사용하여야 하는 사람들은 모델이 직접 결정 규칙을 학습하기..
2021.07.11