머신러닝이란? - (2) 비지도, 강화학습

2021. 7. 10. 22:31AI(Artificial Intelligence)

이전 포스팅인 (1) 지도학습에 이어서 이번엔 비지도와 강화학습에 대해 알아봅시다!

 

3. 비지도학습(Unsupervised Learning)

비지도학습은 컴퓨터가 스스로 데이터의 특징을 찾아내어 답을 구하는 방식입니다. 때문에 답을 가리키는 라벨(=class, feature)이 없는 데이터를 사용하며, 이 데이터에서 비슷한 특징을 가진 데이터들을 묶어(군집화 하여) 새로운 데이터에 대한 결과를 예측합니다. 

 

오잉? 그런데 갑자기 집 앞에 브레멘 음악대가 찾아왔네요! (쨔잔!)

귀여운 동물들

그런데 친구들이 많아서 누가 누구인지 모르겠다고요? 그럴 때 비지도학습이 나오는데요, 이 친구들이 각기 누구인지 모르는 상황에서 동물들을 구별해내기 위해 비지도학습에서는 대표적으로 차원축소분류를 사용합니다.   

 

차원 축소는 특성이 많은 고차원 데이터에서 활용할 수 있으며, 특성의 수를 줄이면서 꼭 필요한 특징을 포함한 데이터로 표현하는 방식입니다. 예시로는 데이터를 시각적으로 보기 위해 데이터셋의 2차원 변환, 이미지 데이터 압축이 있습니다.

분류는 지도 학습에서도 봤듯이 비슷한 형태와 특징을 가진 데이터를 끼리끼리 묶는 것을 말합니다. 위 브레멘음악대 팀원인 고양이도 페르시안, 샴, 러시안 블루와 같이 다양한 종류가 있지만 모두 통틀어 고양이라 분류하는 것처럼요.

 

이러한 비지도학습의 대표적인 예시로는 클러스터링(Clustering)이 있습니다. 이 방법은 군집분석이라고도 하며, 그룹 내의 차이를 줄이고 그룹 간의 차이는 최대화시켜 대표성을 찾는 원리로 구현되는 것이 일반적이라고 합니다. 클러스터링을 크게 나누면 다음과 같습니다.

  • 비계층적 군집분석(Non-Hierarchical Clustering)
    • 중심 기반(Center-based): K-means
    • 밀도 기반(Density-based): DBSCAN
  • 계층적 군집분석(Hierarchical Clustering)

 

유형별 세부 내용은 향후 필요하면 더 추가하겠습니다. 

 

4. 강화학습(RL, Reinforcement Learning)

박태진, "알파고 바둑 실력의 비밀, '딥 러닝(Deep Learning)"

강화 학습의 가장 대표적인 예시는 바로 우리 모두가 아는 알파고입니다. 이 강화학습은 행동 심리학에서 나온 이론으로, 분류할 수 있는 데이터와 정답 모두 따로 주어지지 않습니다. 대신 기계가 한 행동에 대해 상과 벌이라는 보상(reward)를 주어 학습하는 방식입니다. 정확한 답을 제시하지는 않지만 상과 벌을 반복적으로 받음으로써 보상의 가중치 즉, 상을 최대로 벌을 최소로 받는 것을 목표로 합니다.

 

강화학습의 개념에는 에이전트(Agent), 환경(Environment), 상태(State), 행동(Action), 보상(Reward)이 있습니다. 아래 첨부한 레퍼런스 중 언급된 하나의 예시를 빌리자면 아래와 같습니다.

 

게임을 예로들면, 게임의 규칙을 따로 입력하지 않고 자신(Agent)이 게임 환경(environment) 속 현재 상태(state)에서 높은 점수(reward)를 얻는 방법을 찾아가며 행동(action)하는 학습 방법이라고 할 수 있으며 특정 학습 횟수를 초과하면 높은 점수(reward)를 획득할 수 있는 전략이 형성되게 됩니다. 단, 행동(action)을 위한 행동 목록(방향키, 버튼)등은 사전에 정의가 되어야 합니다.

 

강화 학습 알고리즘은 아래와 같이 나눠지며, 강화학습의 개념에 대해 더 자세히 알고 싶다면 아래 url을 참고하시면 될 것 같습니다.

  • Model-Free RL
    • Policy Optimization: Policy Gradient, DDPG, A2C/A3C, TD3...
    • Q-Learning: DQN, DDPG, C51, TD3...
  • Model-Base RL
    • Learn the Model: World Models, I2A, MBMF, MBVE
    • Given the Model: AlpahZero

 

(더 알고싶다면 - https://dreamgonfly.github.io/blog/rl-taxonomy/ )

 

[References]

https://medium.com/mighty-data-science-bootcamp/%EB%B9%84%EC%A7%80%EB%8F%84%ED%95%99%EC%8A%B5%EC%9D%98-%EB%AA%A8%EB%93%A0-%EA%B2%83-29ec2aceb56e

https://ebbnflow.tistory.com/165

https://marobiana.tistory.com/155

'AI(Artificial Intelligence)' 카테고리의 다른 글

딥러닝이란?  (0) 2021.07.18
머신러닝이란? - (1) 지도학습  (1) 2021.07.09