티스토리 뷰

 

안녕하세요 탐구소년입니다.

인간만의 능력으로 여겨지던 "스스로 학습하는 능력"을 컴퓨터로 구현해내는 일(어쩌면 도전)을 머신러닝이라고 합니다. 우리말로는 기계학습이라고도 하죠. 많은 분들이 아시다시피 이 머신러닝 분야에 대한 관심이 날이 갈수록 뜨거워지고 있습니다. 그래서 저도 이쪽 분야에 관심을 가져볼까 싶은 생각이 조금씩 들고 있는데, 해서 오늘은 간단하게 머신러닝의 개념과 그 종류에 대해서 정리를 해보려고 합니다. 

 

 

머신러닝(기계학습)이란?

 

기계학습이란, '기계가 일일이 코드로 명시하지 않은 동작을 데이터로부터 학습하여 실행할 수 있도록 하는 알고리즘 또는 그러한 알고리즘을 연구하는 일'을 의미합니다. 

기계학습이 등장하기 이전의 기계들은 출시 전 개발 단계에서 개발자(사람)에 의해 등록된 알고리즘만으로 동작할수 있었습니다. 그러나 기계학습은 기계가 등록된 알고리즘 외에도 동작 방식을 스스로 정의할 수 있도록 스스로 학습하는 능력을 구현하는 것입니다. 이러한 기계학습이 가능하도록 하기 위해서는 학습 방식을 미리 정의하는 것이 중요한데, 학습 방식에는 다음과 같은 것들이 있습니다.

 

- 교사학습

- 비교사학습

- 강화학습

 

교사학습이란?

 

교사학습이란 교사가 옆에서 문제를 제시한 다음 답을 알려주는 방식의 학습 방법입니다. 어떠한 데이터(문제 또는 참고자료)를 입력할 때 답을 함께 입력하여, 기계로 하여금 '이러이러한 데이터에 대한 답은 이러이러한 답이다'라는 것을 학습하도록 하는 것이 교사학습의 기본적인 원리입니다. 학습량이 많아지면 많아질수록 특정 유형의 문제에 대한 답을 찾을 확률이 높아집니다.

 

비교사학습이란?

 

교사학습과 반대되는 비교사학습은 최종적인 정답이 정해져 있지 않은 데이터에 대한 학습입니다. 데이터의 유형을 분석하여 데이터를 그룹화하는 방식이 주로 사용됩니다. 예를 들어 입력데이터로 고구마와 감자를 계속해서 무작위로 입력한다고 했을 때, 데이터의 유형을 분석하여 감자와 고구마를 그룹화할 수 있도록 하는 식으로 동작하는 식입니다. 

 

강화학습이란?

 

강화학습이란 현재 상태를 관찰해서 어떻게 대응해야 할지와 관련된 문제를 다룹니다. 교사학습과 얼핏 비슷할 수 있지만, 교사학습처럼 완벽한 정답을 제공하지는 않습니다. 이 경우, 완벽한 하나의 답이 아닌 '상황에 맞는 최선의 선택'에 대한 학습을 유도하는 것입니다. 

강화학습에서는 행동하는 객체와 상태 데이터가 필요합니다. 객체는 상태를 파악하고, 이를 기반으로 의사결정을 내려 행동합니다. 이때 발생하는 변화에 대해 학습하여 '선택에 따른 결과'에 대한 데이터를 쌓게 됩니다. 그러면 객체는 갈수록 가장 많은 보상을 받을 수 있는 선택을 할 확률이 높아집니다. 한때 우리나라를 떠들썩하게 만들었던 알파고와 같은 기계도 이러한 방식의 학습을 하는 것으로 알려져 있습니다. 

댓글
공지사항