이번 포스팅에서는 인공지능과 기계학습, 딥러닝을 각각 상세하게 정의하면서 인공지능 기계학습 차이와 기계학습, 딥러닝 차이 및 구분해보고자 합니다.
참고로 본 포스팅은 “인공지능의 쉬운 이해”라는 시리즈로 아래와 같이 3가지 포스팅으로 구성되어 있습니다. 대강 과거, 현재, 미래와 같은 방식으로 정리하려고 합니다.
(2) 인공지능 기계학습 차이 및 기계학습 딥러닝 차이와 구분 방법 << 현재 포스팅
(3) 인공지능의 미래와 한계점, 취약점, 단계적 진화 방향성
앞선 포스팅에서는 인공지능의 유래/기원 및 역사에 대해서 간단히 정리해보았는데요, 현재 3차 AI붐에서 아직도 이슈가 되고 있는 딥러닝이라는 용어가 무분별하게 쓰이면서 명확한 이해없이 사용되는 듯하여,
이번 포스팅에서는 인공지능과 기계학습 그리고 딥러닝을 각각 정의해보고 인공지능 기계학습 차이, 기계학습 딥러닝 차이에 대해서 구분해보고자 합니다.
인공지능(AI, Artificial Intelligence) 의미
인공지능에 대해서는 사회적으로 통용되는 명확히 통용되는 정의가 존재하지는 않습니다.
그러나 일반적으로 인공지능이란 인간의 지적 수준을 요구하는 작업을 처리하는 기계를 의미합니다.
인공지능이라는 용어 자체를 처음으로 사용한 것으로 알려진 존 매카시(John McCarthy)의 경우, 인공지능에 대해서 “지능형 기계를 만드는 과학 또는 공학”이라고 정의했습니다.
또한 맥카시와 함께 인공지능의 개념을 정립한 마빈 민스키(Marbin Minsky) 박사가 정의한 인공지능 또한 마찬가지로 “인간의 지적 능력을 요구하는 작업을 하는 기계”로
학습(Learning), 이해(Understand), 추론(Reasoning), 상호작용(Interacting)과 같이 인간과 비슷한 인지 기능을 수행하는 것 입니다.
궁극적으로는 인간의 말을 이해하고, 전략 게임에서 경쟁을 하거나 자동차를 운전하고 복잡한 데이터를 해석하는 기계들은 인공지능 어플리케이션으로 간주하지만, 현재의 기술수준은 이해하거나 상호작용을 하는 것보다는 아직 “학습”과 “추론”에 머무는 단계 입니다.
인공지능에 대한 관심 증가와 함께 기계학습, 딥러닝 등 여러가지 용어가 난잡하게 사용되고 있지만 실은 기계학습이나 딥러닝은 인공지능의 한 분야이고,
인공지능(AI) > 기계학습(ML) > 딥러닝(DL) 입니다.
기계학습은 수많은 데이터를 기계에 입력해 학습시키는 인공지능의 방법론 중 하나이고,
딥러닝은 기계학습의 상위호환(?)으로 인간의 두뇌 신경망을 모방한 심층 신경망 입니다.
기계 학습(ML, Machine Learning) 의미, 인공지능 기계학습 차이
기계학습이라는 용어 자체는 59년 체스 게임 프로그램을 만든 당시 IBM에서 일하던 아서 사무엘(Arthur L. Samuel)이 “기계가 일일이 코드를 명시하지 않은 동작을 데이터로부터 학습하여 실행가능한 알고리즘을 개발하는 연구 분야”라고 정의하였습니다.
기계학습이란 데이터, 경우의 수가 워낙 많아 사람이 프로그래밍 자체가 불가능한 고차원 분석에 강점이 존재합니다. 즉 스스로 데이터를 인식하고 문제해결의 알고리즘을 찾아내는 기계학습은 인간에 의한 프로그래밍의 벽을 넘은 것으로 평가 받습니다.
결국 인공지능과 기계학습의 차이는 결과(output)에 도달하는 방법(method) 여부로 구분이 됩니다.
기계학습이 아닌 인공지능의 경우 인간이 입력값과 방법을 하나하나 프로그래밍으로 제시하면 기계가 연역적 추론으로 결과를 도출하는 방식입니다. 예를 들어 전문가 시스템(Expert System) 또는 사람이 직접 명시한 if-then 구문 또는 트리탐색 등이 그러합니다.
그러나 기계학습은 사람이 입력값 또는 입력값과 결과값을 같이 제시하면 기계가 귀납적 추론으로 방법을 찾아내서 프로그램화 하는 것 입니다.
이 때 미리 주어지는 결과값을 레이블(Label)이라고 합니다.
예를 들어, 아기 사진을 보여주면서 아기(Baby)라는 Label을 달아준다면 기계가 아기로 인식하고 학습하는 것 입니다. 기계는 실제 아기 사진을 보고 무엇인지를 추측한 다음 추측값과 레이블(정답)을 비교하여 오답을 최소화하는 방식으로 학습하여 방법(알고리즘)을 구축합니다.
기계학습은 많은 데이터를 활용하여 문제 해결 방법인 알고리즘을 스스로 생성하므로 사람의 개입이 최소화됩니다. 데이터가 충분하다는 것을 전제로 기계학습은 기존의 인공지능 프로그래밍 과정을 대체합니다.
딥러닝(DL, Deep Learning) 의미, 기계학습 딥러닝 차이
앞서 기계학습이 귀납적 방법으로 규칙 즉 알고리즘을 스스로 생성하는 방식이라면 여기서 더 발전한 딥러닝은 무엇일까요? 그리고 기계학습 딥러닝 차이는 무엇일까요?
딥러닝은 캐나다 토론토대의 제프리 힌튼 교수가 기존 인공신경망의 한계를 넘는 다층 신경망 학습법을 공개하면서 딥러닝(Deep learning)이라고 명명했습니다.
참고로 제프리 힌튼 교수는 현재 토론토대 교수로 재직 중이며 구글 석학 연구원도 겸임하고 있습니다. (영문 여기 링크 소개)
기계학습(ML)과 딥러닝(DL)의 차이, 기계학습 딥러닝 차이는 학습 구조의 차이로 알고리즘 상의 은닉층 여부에 차이가 존재합니다.
기존의 기계학습은 Shallow learning이라고도 하는데요, 입력한 데이터에서 결과값을 도출하는 알고리즘이 단층으로 되어있는 반면,
딥러닝은 알고리즘 내부에서 입력값을 재가공하여 또 다른 입력값을 만들어 재입력하는 방법으로 다층으로 구성되어 있습니다.
즉, 딥러닝은 Shallow learning으로 인식이 불가능했던 입력값의 의미를 여러층의 연산을 통해 식별 가능한 특징이 있습니다.
딥러닝은 또한 Label에 의한 분류가 아니라 학습 알고리즘에 따른 분류이므로 딥러닝도 지도학습, 비지도학습, 강화학습 모두 가능하며 영상이식 또는 언어처리에도 강점을 가지고 있습니다.
이번 포스팅에서는 인공지능과 기계학습 그리고 딥러닝을 각각 정의해보고 인공지능 기계학습 차이, 기계학습 딥러닝 차이에 대해서 구분해보았습니다.
다음 포스팅에서는 이러한 기계학습, 딥러닝 등을 통해 지속 발전되는 인공지능의 미래에 대해서 정리해보려고 합니다.
참고로 본 포스팅은 “인공지능의 쉬운 이해”라는 시리즈로 아래와 같이 3가지 포스팅으로 구성되어 있습니다. 대강 과거, 현재, 미래와 같은 방식으로 정리하려고 합니다.
(2) 인공지능 기계학습 차이 및 기계학습 딥러닝 차이와 구분 방법 << 현재 포스팅