본문 바로가기
Machine Learning

ML #12 : 머신러닝 자율학습 특징과 적용 예시 (비지도학습)

by 무적물리 2020. 4. 24.

개인적으로 머신러닝 관련 학습을 하고 있어서 작성하는 메모 형태의 포스팅이니 감안하고 읽어주시면 감사하겠습니다. 개인적으로 자율학습을 사용하는 일은 많이 없지만 가끔 클러스터링을 위해 사용하곤 합니다. 오늘은 비지도학습이라고도 불리는 자율학습에 대한 기본 내용과 특징에 대해 포스팅하겠습니다. 




자율학습 개요

예를 들어 머신러닝을 통해 분류를 수행한다고 했을 때, 지도학습과 같은 방법으로 분류를 수행할 수 있으며, 오늘 살펴볼 내용과 같이 자율학습을 사용해서 분류를 수행할 수 있습니다. 지도학습은 목적 값이 존재하는 데이터이며, 자율학습은 목적값이 없는 데이터입니다. 자율학습은 비지도학습이라고도 불립니다. 비지도학습의 특징은 아래와 같습니다.


관찰한 데이터의 패턴, 규칙 탐색

입력 데이터의 패턴을 찾음

종속 변수가 없음

분석하는 사람의 주관 반영

평가가 어려움 (일률적 기준이 없음)


자율학습 예시

#1. 자율학습 혹은 비지도학습은 데이터에서 특정 패턴이나 구조를 찾아낼 수 있는 머신러닝 기법입니다. 예를 들면 순서 분석, 네트워크 분석, 링크 분석, 그래프 이론, 구조 모델링, 경로 분석 등이 있습니다. 


- 순서 분석

- 네트워크 분석

링크 분석

그래프 이론

구조 모델링

경로 분석


#2. 자율학습은 데이터의 밀집 상태에 따라 그룹화를 할 수 있는 특징이 있습니다. 비슷한 데이터를 묶어줌으로써, 입력 데이터를 그룹화할 수 있습니다. 그룹화는 아래와 같은 방법으로 수행됩니다.


위계에 따른 클러스터링

밀도에 따른 클러스터링

상태에 따른 클러스터링

맵을 스스로 구성하는 방법


#3. 자율학습을 사용해서 손상된 영상, 이미지, 문자 등을 복원할 수 있는 특징이 있습니다. 손상된 영상 구간을 주변의 데이터를 활용하여 복원하는 방식입니다. 이와 같은 방법으로 손상된 이미지를 복원하거나 손상된 문자를 유추하여 문장을 완성할 수도 있습니다.



#4. 자율학습을 사용해서 차원을 축소할 수 있습니다. 관찰공간의 샘플의 기반으로 잠재공간을 파악하는 방법입니다. 관찰공간은 실제 파악되는 정보이며, 잠재공간은 관찰 대상들을 잘 설명할 수 있는 잠재된 정보를 말합니다. 또한, 차원 축소에는 데이터를 압축하거나 잡음을 제거하는 것도 포함됩니다.


- 관찰공간(Observation Space) : 실제 파악 정보

- 잠재공간(Latent Space) : 관찰 대상을 설명하는 잠재 정보



R을 이용한 클러스터링

R을 사용해서 기본적인 클러스터링 방법을 실습해보겠습니다. 먼저 데이터를 구성하고 hclust를 사용해서 클러스터링을 수행합니다. 클러스터링된 데이터를 그래프로 확인하기 위해서는 plot을 사용합니다.


# x, y 좌표에 데이터 넣기

x <- c(1,1,2,4,5)

y <- c(1,1,2,4,5)


# xy에 바인드 및 확인

xy <- data.frame(cbind(x, y))

xy


# 클러스터링 및 그래프 확인

hc <- hclust(dist(xy), method="complete")

plot(hc, hang=-1)


마무리 

이번 포스팅에서는 비지도학습 혹은 자율학습의 개요와 특징에 대해 알아보았습니다. 자율학습을 사용하는 일이 많지는 않지만 머신러닝의 큰 세가지 카테고리 중 하나인 주요 방법입니다.


댓글