인사이트
인공지능·머신러닝·딥러닝 차이점은?ㅣ개념부터 차이점까지 총 정리
2022년 07월 11일
테슬라를 포함한 자율 주행 자동차부터 스마트 스피커, 넷플릭스 추천시스템, 운송 로봇까지. 최근 우리의 생활 속에서 빠지지 않고 등장하는 친숙한 키워드 들인데요. 이들의 공통점은 모두 인공지능과 관련된 서비스라는 것입니다.
인공지능에 관심이 있으신 분들이라면 머신러닝(Machine learning), 딥러닝(Deep Learning)이라는 키워드도 많이들 들어보셨을 거예요. 이번 시간에는 머신러닝과 딥러닝의 개념이 무엇이고, 어떻게 다른지 궁금하신 분들을 위해 내용을 정리했습니다.
먼저 “머신러닝(Machine learning)”에 대해서 알아볼까요?
한국어로 직역해보면 “기계 학습”이 되겠죠? 머신러닝은 인공지능을 만들기 위해 기계를 학습시키는 다양한 방법에 대한 학문으로 ‘로봇공학’, ‘제어계측공학’과 같이 하나의 학문이랍니다.
최근에는 한국의 대학교에서 인공지능학과가 생겨나고 있다는 사실 들어보셨죠? 인공지능(머신러닝)을 전공한 학생들은 “저는 머신러닝을 전공했습니다”라고 할 수 있는 시대가 되었어요. “저는 전자공학을 전공했습니다” 같은 맥락처럼 말이죠.
딥러닝(Deep Learning)이란 머신러닝보다 더 작은 개념으로 ‘신경망’을 통해 인공지능을 만드는 머신러닝의 한 종류입니다.
이 딥러닝은 신경망을 여러 층 쌓아서 만든 것인데요. 중학교 교과에서 함수 y=f(x)를 배웠을 때, y = f(g(x))라는 함수 안에 들어간 또 다른 함수, 합성 함수를 배웠던 것을 기억하시나요? 함수의 합성처럼 동물의 신경세포들의 합성인 ‘신경망(Neural Network)’을 따라 만든 ‘인공신경망(Artificial Neural Network)’에서 여러 계층 쌓아서 만든 깊은 신경망(Deep Neural Network), 다른 이름 ‘딥러닝’이 만들어졌습니다. ‘층’이 깊다(Deep)고 해서, ‘심층 학습, 깊은 학습’으로 불리는 학습 방법입니다.
원래 ‘머신러닝’보다 딥러닝의 핵심인 ‘신경망’이 먼저 태어났어요. 그렇지만, 최근에는 ‘머신러닝’이라는 학문에 포함된 단어처럼 사용되기도 하죠. 그러나 ‘딥러닝’만 해도 또 다른 학문이라고 해도 과언이 아닐 만큼 학습해야 하는 양이 많기 때문에, 딥러닝을 하시는 분들은 “딥러닝이 왜 머신러닝이야?”라고 말하기도 합니다.
논란의 여지는 있지만, 머신러닝과 딥러닝의 포함관계를 설명하자면 아래 그림처럼 표현해 볼 수 있습니다.
먼저 인공지능이 가장 큰 개념으로 머신러닝 개념을 포함합니다. 인공지능(Artificial intelligence)은 인간의 학습 능력과 추론 능력, 지각 능력 등을 컴퓨터 프로그램으로 실현한 기술을 말하는데 그 연구 분야 중 하나가 바로 머신러닝입니다. 그리고 딥러닝은 앞서 설명해 드린 것처럼 인공신경망을 이용한 머신러닝의 한 종류로 머신러닝의 하위 개념으로 볼 수 있습니다.
“머신러닝과 딥러닝이 포함관계인가? 독립적인가?“에 대해서 논란의 여지가 있다고 말씀드렸었죠? 왜 논란이 일어날 수 있을까요? 간단히 설명하면, 머신러닝보다 딥러닝의 근간인 신경망(Neural Network)이 먼저 생겨났기 때문입니다. 인공지능의 역사, 계보로 유명한 이미지를 참조하시면 알 수 있습니다.
인공지능과 패턴인식이 가장 먼저 나온 키워드이고, 신경망의 근원인 퍼셉트론(perceptron)과 신경망이 먼저 등장합니다. 그 이후에 머신러닝이 나왔기 때문에 애매하다고 볼 수도 있습니다.
굳이 나눠보자면, 전통적인 머신러닝, 전통적인 컴퓨터비전(영상처리)과 같이 딥러닝을 구분하기도 합니다. 머신러닝은 신경망 기반이 아닌 주로 해석 가능한 수학적 모델을 기반으로 하는 머신러닝을 의미하고, 사람이 기존 지식을 이용하여 선택할 수 있는 특징들을 이용하여 분류, 회귀, 군집 등의 문제를 풀어가는 알고리즘으로 보는 견해가 전통적인 머신러닝이라고 할 수 있습니다.
머신러닝과 딥러닝 모두 데이터를 분류하는 데 사용하는 기술이지만 두 기술의 가장 큰 차이점은 바로 사람의 개입 여부입니다.
머신러닝은 주어진 데이터를 인간이 먼저 처리합니다. 사람이 먼저 컴퓨터에 특정 패턴을 추출하는 방법을 지시하고, 그 이후 컴퓨터가 스스로 데이터의 특징을 분석하고 축적합니다. 이렇게 축적된 데이터를 바탕으로 문제를 해결하도록 하는 거죠. 예를 들어 사람이 먼저 개와 고양이의 사진을 보고 개와 고양이의 특징을 추출한 후 많은 예시를 통해 컴퓨터를 학습시키고 식별하게 만듭니다.
반면에 딥러닝은 머신러닝에서 사람이 하던 패턴 추출 작업이 생략됩니다. 컴퓨터가 스스로 데이터를 기반으로 학습할 수 있도록 정해진 신경망을 컴퓨터에게 주고, 어린아이가 학습하는 것처럼 경험 중심으로 학습을 수행합니다. 즉, 인간이 개, 고양이의 특성을 추려 사전에 정의된 알고리즘과 규칙을 적용하는 머신러닝과 달리, 딥러닝에서는 심층 신경망을 통해 스스로 개, 고양이의 특성을 훈련하여 개와 고양이를 분류할 수 있습니다.
머신러닝 과정에서 어떻게 패턴을 추출할 것인지를 정하는 것은 ‘모델’을 정했다고 표현합니다. 어떤 모델을 활용할지에 따라서 계산하는 방법도 다양해집니다.
딥러닝에서 또한 특정 신경망 구조를 역시 ‘모델’이라고 표현합니다. 최적의 딥러닝 모델 구조(architecture) Neural Architecture Search (NAS)를 찾아주는 방법도 있습니다. 초기에 어떻게 신경망을 시작할지, 간단한 정보를 주면 최적의 신경망을 탐색하는 알고리즘입니다. 그러나 이 과정에는 엄청난 연산량이 필요하여 일반적인 기관에서 사용하는 데에는 한계가 있습니다. 딥러닝에서 신경망의 구조를 고르듯이, 머신러닝에서도 다양한 알고리즘(SVM, Random Forest 등)을 골라주어야 합니다.
아래 머신러닝과 딥러닝의 차이점을 설명한 그림에서 오류를 찾을 수 있다면, 위 내용을 제대로 이해한 것으로 볼 수 있습니다. 찾으셨나요? 머신러닝에서 Classification의 예시로 ‘신경망’ 이미지가 들어간 오류가 있습니다.
학교에서 선생님이 문제 유인물을 나눠주실 때, 항상 정답을 제공해주셨나요? 정답이 없는 경우도 간혹 있었을 거예요. 여러분은 정답이 있을 때와 없을 때, 어떤 상황을 좋아하셨나요?
문제와 정답이 같이 있을 때 빠르게 정답을 확인할 수 있어서 공부하기가 수월했던 경험, 다들 있으실 거예요. 실제로 머신러닝 딥러닝 분야에서도 정답지가 있는 학습 방법인 지도 학습과 정답지가 없는 학습 방법인 비지도 학습이 있습니다. 지도 학습의 경우가 일반적으로 성능이 더 좋아요. 정답지가 없는 학습 방식인 비지도 학습 방식은 머신러닝 모델을 학습시키기가 조금 더 까다롭고요.
한국을 대표하는 주식, 삼성전자의 주가를 예측할 수 있을까요?
주식의 가격은 주가 금액이 작으면 1원 단위로 움직이고, 조금 더 커지면 100원 단위로 거래를 할 수 있습니다. 그렇지만 이 금액은 크고 작은 값을 표현할 수 있는 연속적인 수입니다. 주식을 예측하려면 기업의 재무제표도 봐야 하고, 미국의 연준 금리, 삼성전자와 관련된 뉴스 등 다양한 이벤트들에 의해서 결정됩니다. 입력값이 무수히 많은 변수가 있지만 우리가 보고자 하는 것은 단 하나 ‘주식의 가격, 주가’입니다.
이렇게 한 가지 값을 예측하는 방식의 인공지능을 우리는 ‘회귀(regression)’라고 부릅니다. 마찬가지로 몸무게를 예측하거나, 당뇨 지수를 예측하는 등 수치를 맞추는 것 또한 회귀라고 부릅니다.
스마트폰의 보급과 함께 초기 한국의 게임시장을 뜨겁게 달궜던 애니팡을 기억하시나요?
바둑판과 같은 배경에 여러 이모티콘이 마구잡이로 나열되어 있습니다. 각 이모티콘의 명확한 이름을 알지 못하지만, 같은 모양을 3개 이상을 뭉치게 만들면 터지는 게임입니다.
머신러닝에도 비슷한 것끼리 뭉치게 하는 알고리즘이 있는데 이것을 ‘클러스터링(Clustering)’이라고 합니다. 클러스터링을 애니팡으로 비유한다면 서로 다른 캐릭터의 이름이나 특징에 대해 AI에게 알려주지 않았음에도 AI가 스스로 각 캐릭터들의 특징을 구별해 각 집합을 만드는 것을 말합니다. 이렇게 정답이 없는 데이터로 학습을 시키는 것을 우리는 비지도 학습(unsupervised Learning)이라고 합니다.
앞서 주가를 예측하는 문제는 주식의 가격을 알고 있고, 다른 정보를 이용해서 적절히 학습하는 정답이 있는 문제였습니다. 그러나 클러스터링은 지도학습과 달리 정답이 없이 특징들만을 가지고 그룹을 만들어 가는 과정입니다.
위 예시와 같이 머신러닝은 데이터와 레이블(Label, 정답지), 즉 퀴즈와 정답을 같이 주면서 퀴즈 푸는 방법을 학습을 시키는 방식인 지도 학습(Supervised Learning)이 있고, 데이터만을 주고 데이터의 특징들만을 보면서 군집 등의 문제를 푸는 비지도 학습(Unsupervised Learning)으로 구분할 수 있어요.
앞선 설명에서 ‘회귀(regression)’에 대해서 알아보았는데요. 그렇다면 분류(Classification)는 뭘까요? 하나의 값이 아닌, 여러가지 값들 중 하나를 정답의 후보로 선택해야 하는 경우를 ‘분류’라고 해요.
글을 읽으시는 여러분은 ‘경영학’, ‘산업공학’, ‘경제학’ 등 여러 학문 중 어떤 학문을 전공 (Major)하셨나요? 과연 인공지능이 인스타그램 프로필을 보고 여러분의 전공을 맞출 수 있을까요? 이렇게 ‘전공’처럼 어떤 카테고리로 나눌 수 있는 문제들을 푸는 것을 머신러닝에서 ‘분류(Classification)’이라고 합니다. 영어 그대로 어떤 클래스에 속하는지 표현하는 것이죠.
분류와 회귀는 어떤 부분이 다를까요? 주관식 문제와 객관식 문제 정도의 차이라고 볼 수 있습니다. 머신러닝이 맞춰야 하는 Label(정답지)이 이산적(Discrete)이라면 분류라고 하고, 정답이 연속적(Continuous)이라면 회귀라고 합니다.
이산적(Discrete)이라는 것은 ‘개’와 ‘고양이’ 처럼 각각이 독립된 의미가 있고, 연속적으로 표현하기 어려운 것들이에요. 간혹 연속적으로 보이는 숫자들도 있는데, 연속성의 의미가 없는 문제들을 풀 때 사용합니다. “손으로 글씨 쓴 이미지(image)을 보고, 0-9까지 어떤 정수(integer)를 맞춰볼래?” 하는 문제를 풀 때, 연속적인 값이 의미가 없고, 어떤 숫자인지가 중요하겠죠? 이런 문제가 분류 문제가 됩니다.
딥러닝을 처음 배우게 되면 튜토리얼에서 Mnist 라고하는 데이터셋을 사용하게 되는데, 이렇게 0-9까지 숫자를 맞추는 문제에요. 이런 문제가 대표적인 분류 문제입니다.
연속적(Continuous)이라는 것은 정보의 연속성이 있는 것으로 사람의 키, 몸무게처럼 연속적으로 크기를 비교할 수 있는 것들을 의미하고, 수학에서는 ‘실수’에 해당하는 것으로 보시면 됩니다. 주행거리에 따라서 중고차 가격을 맞히는 문제가 대표적인 회귀 문제라고 할 수 있습니다.
분류와 회귀에 따라서 머신러닝 알고리즘이 다르기도 하지만, 두 방식으로 모두 사용할 수 있는 알고리즘도 있고, 두 모델을 동시에 사용하는 경우도 많아지고 있어서, 고급 기술로 넘어갈수록 그 경계가 뚜렷하지 않아지는 특징도 있으니 참고하세요!
딥러닝도 마찬가지예요! 머신러닝에서 분류와 회귀를 이해했다면 크게 다르지 않아요! 딥러닝은 신경망을 기반으로 한다고 설명해 드렸었죠? 마찬가지로 분류와 회귀 문제를 푸는 각각의 딥러닝(신경망)이 있습니다. 이는 출력층을 어떻게 설계하느냐에 따라 달라지는데, 이번 아티클에서는 “딥러닝 역시 분류와 회귀 모두 풀 수 있는 방법이다”까지만 설명하고 넘어갈게요.
딥러닝에서도 머신러닝과 마찬가지로 지도 학습과 비지도 학습이 있고, 일부만 정답과 알고리즘이 만들어 낸 유사 정답(pseudo label)을 만들어 학습하게 하는 준지도 학습(Semi-Supervised Learning)도 많이 사용됩니다. 추가로 최근에는 레이블이 없는 데이터에서 알고리즘에서 얻어지는 특징표현(representation) 선정하고 학습하여 특징 추출 모델을 활용하여 유사한 문제를 해결하도록 만드는 자기 지도 학습(Self-Supervised Learning)방식도 활발히 연구되고 있으니, 꼭 메모해두세요!
지금까지 인공지능, 머신러닝, 딥러닝에 대한 개념과 포함관계, 그리고 간단한 차이점에 대해 짚어보았습니다. 말로만 들었을 땐 구분이 어렵던 개념이 이제 조금 이해가 되셨나요?
인공지능 챗봇부터 자율 주행 자동차까지, 우리 주변에서 널리 활용되고 있는 머신러닝, 딥러닝 기술에 대해 더 자세히 알고 관련 커리어로 취업 및 이직을 희망하신다면 코드스테이츠 AI 부트캠프가 좋은 기회입니다. 실무중심 커리큘럼으로 과제를 수행하며 데이터의 기초를 배울 수 있고 기업의 실제 데이터를 기반으로 한 프로젝트를 진행하며 가공된 데이터가 아닌 실제 데이터를 다뤄볼 수 있습니다.
목록 보기
추천글