기계학습 - 비지도 & 반지도학습
비지도 & 반지도학습에서 사용되는 개념에 대해 알아봅니다.읽는데 6분 정도 걸려요.비지도학습
지도학습은 학습 데이터에 입력-출력이 명시되어 있었는데, 비지도학습은 학습 데이터에 어떠한 레이블도 붙지 않은 데이터를 이용한 학습 방법을 의미한다.
비지도학습을 통해 데이터에 대한 잠재적인 구조나 계층 구조를 찾을 수 있고, 문서들을 주제에 따라 구조화 하거나, 로그를 분석한 사용 패턴을 알아내는데 적용할 수 있다.
군집화
유사성에 따라 데이터를 분할하는 것으로, 데이터가 하나의 군집에만 소속되는 일반 군집화(Hard clustering)와 퍼지 군집화(Fuzzy clustering)으로 나뉜다.
군집화는 보통 아래와 같은 용도로 사용된다.
- 데이터에 내제된/일반적 구조 추정/통찰
- 가설 설정
- 이상 감지
- 데이터 압축
- 데이터 전처리 (부류(class)를 부여하는 방식)
성능은 군집 내의 분산은 작을수록, 군집간의 거리는 멀수록 좋다고 평가한다.
밀도 추정
부류(class)별로 데이터를 만들어 냈을 것으로 추정되는 확률 분포를 찾는 과정으로, 각 부류 별로 주어진 데이터를 발생시키는 확률을 계산하여 가장 확률이 높은 부류로 데이터를 분류한다.
분포가 수학적인 형태를 갖고있을 것을 가정하여 데이터의 분포를 가장 잘 수학적으로 표현하려고 하는 추정 방식을 모수적 밀도 추정
이라고 하며, 전형적으로 Gaussian 함수의 혼합으로 표현한다.
또는, 분포에 대한 수학적 함수를 가정하지 않고, 주어진 데이터를 사용하여 밀도함수의 형태로 표현하는 방식을 비모수적 밀도 추정
이라고 하며, 전형적으로 히스토그램과 같은 방식으로 표현한다.
차원 축소
고차원의 데이터를 정보의 손실을 최소화 하면서 저차원으로 변환하는 것으로, 시각화를 직관적으로 하기 위해, 그리고 차원의 저주 문제
를 완화하기 위해 사용한다.
차원의 저주 문제
차원이 커질수록 거리분포가 일정해지는 경향
이를 위해 주성분을 분석하여 분산이 큰 축을 기준으로 데이터를 projection하는 방식을 사용해서 저차원으로 변환한다.
이상치 탐지
다른 데이터와 크게 달라서 관심 대상으로 봐야하는 데이터를 탐지하기 위해 사용한다.
이런 관심대상의 데이터는 노이즈
일 확률이 높으나, 신규성 탐지
의 경우도 항상 염두해야 한다.
이상치는 아래와 같은 방식으로 탐지할 수 있다.
-
점 이상치
다른 데이터와 비교하여 차이가 큰 데이터 -
상황적 이상치
상황에 맞지 않는 데이터 -
집단적 이상치
여러 데이터를 모아서 보면 비정상으로 보이는 데이터
이러한 이상치 탐지는 부정사용감지 시스템이나 침임감지 시스템 등에 사용할 수 있다.
반지도학습
비지도학습과 마찬가지로 미분류 데이터를 이용하는데, 이를 지도학습에 사용하는 방법이다.
이런 식으로 같은 군집에 속하는 것은 가능한 동일한 부류에 소속하도록 학습하는 방식이다.
미분류 데이터는 획득 비용이 낮기 때문에 이러한 지도학습 방식도 고려하면 좋다.
단, 반지도학습을 위해서는 데이터가 아래와 같은 경향을 보인다는 가정하에 이루어져야 한다.
-
평활성 가정
가까이 있는 점들은 서로 같은 부류에 속할 가능성이 높음 -
군집 가정
같은 군집에 속하는 데이터는 서로 같은 부류에 속할 가능성이 높음 -
매니폴드(Manifold) 가정
원래 차원보다 낮은 차원의 매니폴드에 데이터가 분포할 가능성이 높음