배워서 남 주자

AI/인공지능 및 기계학습 개론

[인공지능 및 기계학습 개론] 4.1 Decision Boundary

신라면순한맛 2022. 8. 23. 20:22

이번 시간에는 Decision Boundary에 대해서 알아보도록 하겠습니다.

 

http://www.edwith.org/machinelearning1_17/lecture/10590

 

[LECTURE] 4.1. Decision Boundary : edwith

- 신승재

www.edwith.org

 


 

아래의 그림을 같이 보도록 하겠습니다.

 

 

이 그림은 점선이 한 세트이고, 실선이 한 세트입니다. 점선의 경우를 살펴보면, 아래 그림처럼 색칠한 부분을 택했을 때, 택하지 않은 부분만큼은 risk로써 작용할 것입니다. 마치 주사위를 한 번 던져서 1의 눈이 나오는 확률을 구하고 싶다면, 그렇지 않은 경우가 리스크로 작용하는 것처럼 말이죠.

 

선택하지 않은 반대쪽은 리스크로 작용

 

여기서 decision boundary에 해당하는 가운데 만나는 부분을 보면, 당연히 decision boudary를 기점으로 확실히 구분되는 것이 좋을 것입니다. 이를 조금 더 구체적으로 말하자면, decision boundary 기준 왼쪽에서는 초록색을 고를 확률이 높게 (그와는 동시에 빨간색을 선택할 리스크는 적게), 그리고 오른쪽에서는 빨간색을 고를 확률이 높게 (그와는 동시에 초록색을 선택할 리스크는 적게) 하는 것이 좋을 것입니다. 그런 의미에서 보았을 때 점선보다는 실선이 더 좋은 경우라고 할 수 있겠습니다.

 

Decision boundary 근처에서는 구분이 확실하게 하는게 좋다 (빨간색 동그라미 부분)

 


 

다음으로 다시 이전 credit 예시를 가져오도록 하겠습니다. 여러 판단기준이 있고, 이에 따라 class C는 돈을 받았으면 1, 못받았으면 0을 주는 class attribute였습니다. 

 

 

이 때 A15를 이용하여 class C를 predict한다고 해보겠습니다. $X=A15$는 continuous value에 대한 것이고 $Y=C$는 discrete value이니 아래의 왼쪽 그림과 같이 나올 것입니다. 이 때 $X$의 값때문에 보기가 좀 어려운 것을 알 수 있습니다. 값이 큰 것이 몇몇 섞여있어서 나머지 점들의 분포를 다 뭉개버렸기 때문인데요. 이럴 때에는 $\log$를 취하면 편하게 볼 수 있는 특징이 있습니다. (이런 상황에서 $\log$를 취하는 것은 현업에서도 너무나 당연히 사용하는 테크닉입니다.)

 

 

$\log$를 취하기 전에는 왼쪽편에 점이 뭉개져있어서 decision boundary를 긋기 어려웠는데, $\log$를 취하고 나서 보니 오른쪽 그림과 같이 그릴 수 있게 된 것을 알 수 있습니다. 지금처럼 눈대중으로 decision boundary를 찾는 것은 이런 예시에서나 할 수 있는 일이고, 실제로는 그럴 수 없겠죠. 그래서 이를 그어줄 기준으로 regression을 진행하는데, 비교를 위해 linear function과 non-linear function을 가지고 와서 regression을 해보도록 하겠습니다. 그러면 아래와 같이 나옵니다.

 

 

그림에 대한 해석을 해보겠습니다. 왼쪽의 그림은 $\log$를 취하지 않고 regression을 한 것입니다. 파란색은 위에서 봤던 points이고, 빨간색이 linear regression, 초록색이 logistic function을 사용한 것입니다. (Logistic function에서는 다음 포스팅에서 다룹니다.) 보시면 빨간색으로는 파란색 점들을 제대로 설명하지 못하는데 반해, 초록색은 그럴듯하게 설명을 하는 것처럼 보입니다. 오른쪽 그림은 $\log$를 취한 것인데 조금 더 분명하게 드러나는 것을 알 수 있습니다.

 


 

이렇게 decision boundary를 잡는 것을 좀 더 알아보았습니다. 갈수록 data가 단순하지 않기에 위와 같이 $\log$를 취하는 등의 전처리를 하기도 하고, linear regression만으로는 설명이 안되는 상황도 얼마든지 생기기에 다른 테크닉을 도입하는 등의 여러 노력이 있는 것을 알 수 있었습니다. 그에 따라 당연히 decision boundary 잡는 과정 또한 따라가게 되는 것이고요. 

 

다음 포스팅에서는 본격적으로 logistic regression에 대해서 알아보도록 하겠습니다.