본문 바로가기

Data Analysis/Machine Learning

머신러닝(Machine Learning) 정의 및 지도학습,비지도학습,강화학습

1. Machine Learning (머신러닝) 정의

 

-  Arthur Samuel (1959)

  : 머신러닝의 학술적 정의는 명시적인 프로그래밍 없이 컴퓨터가 학습하는 능력을 갖추게 하는 연구 분야이다.

 

- Tom Mitchell (1998)

  : 어떤 작업 T에 대한 컴퓨터 프로그램의 성능을 P로 측정하였을 때 경험E로 인해 성능이 향상됐다면, 이 컴퓨터 프로그램은 작업T와 성능측정P에 대해 경험E로 학습한것이다.

 

- 인공지능의 한 분야이며 컴퓨터가 학습할 알고리즘을 개발하고 알고리즘이 적용된 모델을 구현하고, 구현된 모델을 통하여 컴퓨터가 스스로 학습할 수 있도록 해주는 것을 머신러닝이라고 할 수 있습니다.

 

- 머신러닝은 Training Data를 통해 학습하여 알려진 속성을 기반으로 예측에 초점을 둡니다.

 

2. Machine Learning 과 Rule Base와의 차이

[머신러닝 Machine Learning]

- 수식으로 표현 불가능한 복잡한 문제를 머신러닝으로 해답을 찾을 수 있음

- 학습할 수 있는 데이터가 많이 있는 경우에는 머신러닝을 통해 해결하고자 하는 문제나 새로운 인사이트를 도출할 수 있음

- 기준이 자주 변경되지 않은 문제에 머신러닝 사용이 적합함

  (기준이 자주 바뀌는 경우 머신러닝의 셋팅 및 재학습을 해야하기 때문에 Rule Base가 오히려 적합함)

 

[룰베이스 Rule Base]

- 수식으로 표현이 가능한 문제를 해결하기 위해 Rule Base를 사용함

- 기존에 보유한 데이터가 없고 새롭게 기준을 세우거나 문제를 정의할 때 Rule Base를 사용함

- 기준이 자주 변경되는 문제는 Input, Output이 변경되기 때문에 Rule Base로 기준을 바꿔주면서 사용을 해야함

   (기준이 자주 바뀌면 머신러닝으로 적용하기에는 어려움이 있음)

 

3. Machine Learning의 종류

 

머신러닝의 종류는 데이터를 학습하는 형태에 따라 지도학습, 비지도학습, 강화학습으로 크게 3가지로 나눌 수 있습니다.

 

Machine Learning의 종류 - 지도학습 비지도학습 강화학습

 

1) 지도학습 (Supervised Machine Learning)

Input 입력 데이터와 Output 결과값을 주고 학습을 시키는 것을 머신러닝의 지도학습이라고 합니다.

간단하게 예시를 들어보면 아래와 같이 입력데이터(소방차,경찰차 이미지)와 각각의 이미지에 대한 결과값을 모두 컴퓨터에 학습을 시킵니다.

 

머신러닝(Machine Learning) - 지도학습 (Supervised Machine Learning) 예시
머신러닝(Machine Learning) - 지도학습 (Supervised Machine Learning) 예시

 

위에서 학습된 결과(학습모델)를 기반으로 새로운 이미지를 입력데이터로 넣어주면 컴퓨터가 기존 학습데이터를 기반으로 결과를 예측합니다.

새로운 자동차 이미지를 입력 데이터로 넣어주면 학습을 기반으로 경찰차 인지 소방차인지를 예측하여 결과값을 내어주게 됩니다.

이런식으로 입력 데이터와 결과값을 주고 학습을 시키는 것을 지도학습(Supervised Learning)라고 합니다.

주로 분류(Classification) 문제나 회귀(Regression) 문제에 주로 사용 됩니다.

 

2) 비지도학습 (Unsupervised Machine Learning)

 

입력 데이터를 넣어주고 결과값을 주지 않은 상태에서 결과는 주지 않고 입력만을 주고 학습을 시키고 결과값을 예측합니다.

 

 

비지도학습 (Unsupervised Machine Learning) 예시

예시를 들어보면 아래와 같이 입력 데이터를 소방차와 경찰차의 이미지들만 넣어줍니다.

결과값을 별도로 넣어주지 않은 상태에서 머신러닝을 진행하게 됩니다.

결과값을 정확하게 주지는 못하지만 데이터의 특성을 파악하여 비슷한 데이터들끼리 군집의 결과를 돌려줍니다.

비지도 학습을 통해서 학습 데이터로부터 유용한 정보를 추출해 낼 수 있습니다.

비지도학습은 군집화, 밀도추정등이 문제에 활용됩니다.

 

3) 강화 학습 (Reinforcement Learning)

행동심리학에서 영감을 받았으며, 어떤 환경 안에서 정의된 에이전트가 현재의 상태를 인식하여 선택 가능한 행동들 중 보상을 최대화하는 행동 혹은 행동 순서를 선택하는 방법입니다. (위키백과)

 

강화 학습은 게임에서 레벨업을 하듯이 컴퓨터가 학습을 하면서 좋은 결과를 내면 보상(Reward)이 주어지고, 더 나은 보상을 획득하기 위해 모델을 진화시켜나가는 방식입니다.

 

머신러닝(Machine Learning) - 강화학습(Reinforcement Learning)

 

 

 

강화학습은 딥러닝과도 유사한 구조를 가지고 있습니다.

이상으로 머신러닝의 개념과 종류 (지도학습,비지도학습, 강화학습)에 대한 정리 포스트를 마칩니다.