인공지능 핵심 분야 · 기계학습 아카이브
aistudy home

기계 학습 (Machine Learning)

경험과 데이터를 통하여 스스로 지식을 수정·보완하고 문제 해결 능력을 지속적으로 개선하는 인공지능의 핵심 방법론

개요 기계학습의 창안자, 기본 개념 및 작동 원리

1. 기계학습의 창안자와 역사적 선구자

용어 창안 및 최초의 게임 학습
아서 사무엘 (Arthur Samuel, 1901~1990)

1959년 '머신러닝(Machine Learning)'이라는 용어를 최초로 제안하였으며, "컴퓨터가 명시적인 프로그래밍 없이도 스스로 학습할 수 있는 능력을 부여하는 연구 분야"라고 정의했습니다. IBM 704 컴퓨터에서 체커(Checkers) 게임을 통해 자신의 이전 수와 결과를 학습하여 점진적으로 승률을 높이는 세계 최초의 자가 학습 프로그램을 개발하였습니다.

기계 학습 가능성 제안
앨런 튜링 (Alan Turing, 1912~1954)

1950년 기념비적인 논문 《Computing Machinery and Intelligence》를 통해 "기계가 생각할 수 있는가?"라는 화두를 던지며, 사람처럼 학습하는 어린아이 기계(Child Machine)를 만들어 경험을 통해 지식을 축적해 나가는 방식의 기계 학습 개념을 세계 최초로 제시했습니다.

현대 머신러닝의 공학적 정립
톰 미첼 (Tom Mitchell, 1951~ )

CMU 교수로 1997년 저서 《Machine Learning》에서 현대 머신러닝의 표준적인 공학적 정의를 수립했습니다: "어떤 컴퓨터 프로그램이 작업 T를 수행할 때 성능 P로 측정되고, 경험 E를 쌓아감에 따라 성능 P가 향상된다면, 그 프로그램은 경험 E로부터 학습한다고 말한다."

2. 기계학습의 기본 개념

💡 전통적 프로그래밍 vs 기계학습 패러다임 전환

• 전통적 프로그래밍(Traditional Programming) : 사람이 직접 알고리즘 규칙(Rule)과 데이터를 컴퓨터에 입력하면, 컴퓨터가 규칙을 그대로 실행하여 결과를 산출합니다.

• 기계학습(Machine Learning) : 컴퓨터에 대량의 데이터(Data)와 그에 대응하는 정답/결과를 함께 제공하면, 컴퓨터가 데이터 안에 내재된 패턴과 규칙(Model)을 스스로 찾아내어 미지의 새로운 데이터에 대해서도 정확한 판단을 내립니다.

머신러닝은 학습 방식과 데이터의 형태에 따라 크게 세 가지 패러다임으로 나뉩니다:

1) 지도 학습 (Supervised Learning) : 정답(레이블)이 달린 데이터를 주어 입력과 출력 간의 매핑 규칙을 학습 (회귀, 분류)

2) 비지도 학습 (Unsupervised Learning) : 정답 레이블 없이 데이터 자체의 군집, 밀도, 패턴을 스스로 분석 (클러스터링, 차원 축소)

3) 강화 학습 (Reinforcement Learning) : 에이전트가 주어진 환경에서 시행착오를 겪으며 보상(Reward)을 극대화하는 최적의 행동 정책을 습득

3. 기계학습의 핵심 작동 원리 (5단계 프로세스)

STEP 01
데이터 수집 & 전처리

실세계의 양질의 데이터를 수집하고, 결측치 보정 및 특징 벡터(Feature Vector)로 변환하여 훈련셋과 테스트셋으로 분할합니다.

STEP 02
모델 구조 선정

선형 모델, 의사결정 트리, 서포트 벡터 머신, 인공신경망 등 문제 해결에 최적화된 수학적 가설 함수 $f(x; \theta)$를 정의합니다.

STEP 03
손실 함수(Loss) 정의

모델이 예측한 값과 실제 정답과의 오차를 측정하는 손실 함수(MSE, 교차 엔트로피 등)를 설정하여 학습 목표를 수치화합니다.

STEP 04
최적화(Optimization) 학습

경사하강법(Gradient Descent) 등의 최적화 알고리즘을 통해 오차를 최소화하는 방향으로 모델의 가중치 파라미터를 반복 갱신합니다.

STEP 05
검증 및 일반화 추론

학습에 사용되지 않은 미지의 테스트 데이터에 대해 과적합(Overfitting) 없이 올바른 결과를 추론하는 일반화(Generalization)를 완성합니다.

본질 인간의 학습과 기계학습의 적응성

인간은 학습 (Learning) 할 수 있기 때문에 자신의 지식을 계속적으로 확장시켜 나갈 수 있다.  이러한 지적 능력은 인간을 다른 생물과 구별시키는 아주 중요한 요소들 중의 하나이다.  Machine Learning은 궁극적으로 인간의 이러한 학습능력을 컴퓨터에 구현하고자 하는 시도이다.

인간의 가장 두드러진 특징은 새로운 것을 배우고 변화하는 환경에 적응할 수 있는 학습능력을 가지고 있다는 것이다.  만일 컴퓨터도 이와 같은 학습능력을 가질 수 있다면 지능을 가진 인간과 유사한 적응력을 가질 수 있게 될 것이다.

🎯 인공지능(AI)에서의 학습의 학문적 정의

AI에서는 학습을 '프로그램이 하나의 문제를 수행한 후에 그 추론 과정에서 얻은 경험을 바탕으로 시스템의 지식을 수정 및 보완하여, 다음에 그 문제나 또는 비슷한 문제를 수행할 때에는 처음보다 더 효율적이고 효과적으로 문제를 해결할 수 있는 적응성'이라고 정의한다.

과연 컴퓨터가 배우는 능력을 갖출 수 있느냐에 대해서는 논란이 많이 있다.  학습에서는 새로운 지식의 습득과 새로운 정보의 추론이 중요하므로, 컴퓨터는 단순히 자료를 인식하는 것만이 아니라, 새로운 정보를 통하여 자신의 경험으로부터 얻은 지식을 수정하고 보다 정확한 지식으로 개선해 나가는 능력을 갖추어야 한다.

배경 기계학습 연구의 4대 이론적 배경

1980년대 이후 기계학습 (Machine Learning) 의 연구가 활기 있게 전개된 까닭은 우선 네 가지로 풀이될 수 있다.

배경 1 : 전문가 시스템의 자동화
지식 획득 및 AI 발전 촉진

학습 절차를 잘 이해하면 전문가 시스템 구성의 자동화를 촉진시킬 수 있고, 그 결과로 AI를 급속도로 발전시킬 수 있으리라고 기대하기 때문이다.

배경 2 : 과학적 이론의 일반성 추구
이론적 요구와 보완

전문가 시스템들이 과학을 할 때 필수적으로 요구되는 이론의 일반성을 결여하고 있으므로, 문제 해결이나 탐색 분야에서 발견한 일반 원리와 유사한 일반성을 기계학습 영역에서도 취하고자 한 것이다.

배경 3 : 인간 정보처리의 모델화
인지 과정 설명 및 교육 개선

인간의 학습 절차를 모델화하여 정보처리 시스템의 다양한 특색을 설명하고, 인간 학습 절차를 깊이 이해함으로써 교육 개선과 지적 발전에 크게 공헌할 수 있다.

배경 4 : AI 전 영역과의 유기적 연계
인식론적 철학과 전 분야 융합

기계학습 문제는 지식 표현과 추리뿐만 아니라 문제 해결, 정리 증명, 유추 추리, 비단조 추리, 자연어 처리, 화법 인지, 컴퓨터 비전, 로봇 공학, 계획 수립, 게임 실행, 패턴 인지, 전문가 시스템 등 AI 모든 분야에 직결되어 있다.

그리하여 오늘날 기계학습은 AI 전반에 관련된 핵심 문제로서 활발히 연구되고 있다.  (이초식 1993)

방법론 기계학습의 주요 구현 기법과 학습 유형

Machine Learning을 구현하는 방법에는 매우 다양한 접근법들이 포함된다:

Machine Learning은 경험을 통해서 자동적으로 컴퓨터 알고리즘을 발전시키는 것에 관한 연구이다.  엄청난 데이터에서 일반적인 규칙을 발견하는 데이터마이닝 프로그램에서부터, 자동적으로 사용자의 관심 사항을 배우게 되는 정보 필터링 시스템(Information Filtering System)까지 그 응용은 매우 광범위하다.

⚖️ 컴퓨터 학습의 놀라운 모순과 두 가지 유형

놀라운 모순은, 컴퓨터가 배우기는 아주 쉽기도 하고 아주 어렵기도 하다는 사실이다.  이 이유는 두 가지 다른 유형의 학습이 존재하기 때문이다:

• 반복에 의한 학습 (Learning by Rote) : 컴퓨터에게는 너무나 쉬운 영역으로, 데이터를 그대로 저장하고 기계적으로 재생하는 단순 암기식 학습

• 인지 학습 (Cognitive Learning) : 컴퓨터에게는 너무나 어려운 영역으로, 유추, 귀납, 개념 형성, 맥락적 추론을 통한 고차원적 지식 체계화

이 점에서 여러 가지 다른 유형의 학습(유추에 의한 학습, 예에 의한 학습, 관찰에 의한 학습 등)이 있다고 제안하고 싶을지도 모른다.  그러나 이런 것들은 그것에 의해 지식이 습득될 수 있는 방법을 말하는 것이지, 학습이 일어나게 하는 실제 메커니즘을 말하는 것은 아니다.

동영상 기계학습 추천 동영상 및 온라인 강좌

국내외 석학 및 전문 교육 기관에서 제공하는 대표적인 기계학습 온라인 강의 모음입니다:

기계학습 개론 : Introduction
플랫폼 : KAIST KOOC
강사 : 문일철 교수 (2016/04/07)
동영상 71개 재생목록
기관 : Caltech (캘리포니아 공과대학교)
강사 : Yaser Abu-Mostafa 교수 (2012/04/03)
Playlist 18 강좌 모음
기관 : Stanford University (스탠퍼드 대학교)
강사 : Andrew Ng 교수 (2008/07/22)
Playlist 20 전체 강좌
(전문가 토크 릴레이) 딥러닝의 미래와 인간수준 기계학습
주최 : 솔트룩스
강사 : 장병탁 교수 (서울대학교) (2015/11/11)
기계학습 (Machine Learning) 입문하기
강사 : Terry TaeWoong Um
일자 : 2015/10/30
기계학습 (Machine Learning) 입문하기 (강연 ver.)
강사 : Terry TaeWoong Um
일자 : 2015/10/30
컴퓨터가 인류보다 똑똑해 진다면 무슨 일이 벌어질까?
강연 : TED · 에듀앤스쿨
연사 : Nick Bostrom (닉 보스트롬) (2015/10/06)