빅데이터, 인공지능(AI), 머신러닝, 딥러닝

기획자가 알아두면 좋을 도메인 지식

by Zorba

최근 컴퓨터의 아버지 앨런 튜링의 일화를 다룬 이미테이션 게임이라는 영화를 봤다. 극 중 튜링은 1950년 초반 이미 그의 논문에서 '과연 기계가 인간처럼 생각할 수 있는가?'라는 물음을 던지며 인공지능에 대한 개념을 이야기한다. 그리고 기계의 인공지능을 판별하는 기준으로 '튜링 테스트'를 제안한다.

Screen_Shot_2021-07-26_at_11.49.20_PM_(2).png 출처: 넷플릭스 | 이미테이션 게임

그로부터 60년이 지난 지금 우리는 AI 시대에 살고 있다. 데이터의 가치는 석유를 뛰어넘었다는 이야기가 여기저기 들려오며, 빅데이터를 보유한 MAGA (Microsoft, Apple, Google, Amazon)를 필두로 공룡 플랫폼 기업들의 규모는 더욱이 커져가고 있다. 2016년 알파고의 등장으로 우리는 인공지능의 대단함을 알게 되었고, 이제는 딥러닝 기술 기반의 자율주행의 시대가 도래하려 한다. 머신러닝 기술로 사용자의 패턴을 분석하여 다음 행동을 예측하기도 한다. 그래서 우리가 허구한 날 이야기하는 빅데이터, 인공지능, 머신러닝, 딥러닝이란 무엇일까?


21316137525F471D15.png 출처: R Wang & Insider Associates



빅데이터

빅데이터는 3V (Volume, Velocity, Variety)라는 특징을 가지고 있다.

1) Volume (크기) : 이전에 우리가 생각하던 MB, GB를 넘어 TB, PB 단위의 데이터가 쌓이는 현재 이전과 비교했을 때 데이터의 크기는 무궁무진해졌다. 그리고 이러한 엄청난 크기의 빅데이터는 기존 시스템에 저장하기 어렵고 꺼내어 분석하는 데 시간이 오래 걸리기 때문에, 하둡(Hadoop)과 같은 분산 컴퓨팅 기술들이 주목을 받고 있다.

2) Velocity (속도): 속도는 빅데이터를 빠르게 처리하는 것을 의미한다. 현재 우리가 살아가는 시대의 데이터들은 매우 빠른 속도로 생성되는 만큼 이를 실시간으로 수집하고, 저장하고, 분석해야 한다. 이것을 가능하게 하는 실시간 스트리밍 기술인 카프카(kafka) 기술이나 분산 처리 기술인 스파크(Spark) 역시 널리 사용되고 있다.

3) Variety (다양성): 우리가 익숙하게 사용하던 정형 데이터를 넘어, 빅데이터는 비정형, 반정형 데이터까지도 포함한다. 정형 (structured) 데이터란 데이터베이스의 정해진 규칙에 맞는 데이터를 의미하는데, 쉽게 엑셀 시트를 생각하면 될 것 같다. 그곳에는 숫자나 문자가 들어갈 수 있는 것처럼 말이다. 빅데이터가 시대가 주류를 이루기 전, 우리는 대부분의 정형 데이터만을 다뤄왔다. 이와 반대되는 개념이 바로 비정형 (unstructured) 데이터이다. 정해진 규칙이 없는 데이터로 음성, 영상, 이미지 등이 여기에 속한다. 애플의 시리, 갤럭시의 빅스비 등이 이러한 비정형 데이터를 활용한 기술로 만들어진 것이다. 반정형 (semi-structred) 데이터는 가장 이해하기 힘든 개념인데, 쉽게 말해서 정형과 비정형을 섞어놓은 것이라 보면 된다. 정해진 규칙에 맞는 정형 데이터보다 훨씬 유연한 데이터 구조로, 연산이나 질의 처리를 할 수 없는 것이 특징이다. 대표적으로 key, value 값을 가지는 JSON 형태를 포함해서, HTML, XML 형태가 여기 속한다.


이러한 3V의 특성을 가진 빅데이터의 등장 덕분에 우리는 인공지능 (AI), 머신러닝, 딥러닝을 이야기할 수 있다. 이 세 가지 개념을 하나의 도표로 표현하면 다음과 같다.

028.jpg 출처: Gilbut, Inc.

딥러닝 ⊂ 머신러닝 ⊂ 인공지능의 포함관계를 나타내고 있다.


인공지능 (AI)

인공지능이란 아까 튜링 이야기에서도 언급했듯이, 간단히 말해 사람의 지능을 모방한 기계라고 볼 수 있을 것 같다. 즉, 인공지능은 사람이 생각하며 수행하는 복잡한 일들을 할 수 있다. 인공지능은 컴퓨터과학의 영역이라고 볼 수 있겠다. 하지만 인공지능의 정확한 개념은 나도 무언가 명확하게 얘기할 수 없다. (아마 컴퓨터를 제대로 공부하지 않았기 때문일 것이다.) 대신 인공지능을 구현하기 위한 중요한 방법으로 그보다 하위 개념인 머신러닝과 딥러닝은 통계학을 전공하며 수없이 들어왔기 때문에 그에 관해서는 이야기할 것이 좀 많을 것 같다.


머신러닝

머신러닝은 컴퓨터가 데이터로부터 스스로 학습할 수 있게 하여, 어떠한 문제에 대한 결과를 설명하거나 예측을 하게 만드는 기술이다. 쿠팡이 그동안 에어팟 프로를 구매한 사람에 대한 데이터를 전부 모아서 컴퓨터한테 '이러한 이러한 사람은 구매를 했어', '저러한 저러한 사람은 구매를 안 했어'로 두 분류로 나누어 머신러닝을 돌렸다고 가정해보자. 그렇다면 28세, 여, 서울 거주, 자녀없음 이라는 demographic을 가진 새로운 사용자가 쿠팡에 신규 가입했을 때 머신러닝 기술을 통해 이 사람이 에어팟 프로를 구매할 확률을 알 수 있고, 만약 그 확률이 높다면 쿠팡은 해당 제품을 추천할 수 있을 것이다.


Untitled-presentation-1-1.jpg 출처: www.aitude.com

앞서 말한 것은 머신러닝 중 지도학습 (Supervised Learning)에 속한다. 이건 정답을 주는 학습이다. 예를 들어 기계한테 '이 사진은 고양이야~' '이 사진은 강아지야~'라고 명시를 해고 수억 개의 사진을 던져주는 것이라고 이해하면 편할 것 같다.


이와 좀 다르게 비지도학습 (Unsupervised Learning)이 있는데, 이것은 앞선 개념과 다르게 정답을 주지 않는다. 대신 데이터들의 특징을 비교하여 비슷한 데이터들끼리 그룹화를 하거나 데이터 사이의 연관성을 분석한다. 앞선 고양이와 강아지의 예를 다시 들어보자면, 수억 개의 고양이와 강아지의 사진을 먼저 던져주고, '얘네 특징 보고 한번 분류해봐'라는 것이다. 그렇다면 기계는 눈이 좀 매섭고, 꼬리가 긴 친구들을 '고양이'라는 한 군집을 만들 것이고, 눈이 똘망똘망하고 코가 큰 친구들을 '강아지'라는 한 군집으로 만들 것이다.


머신러닝의 다음 기술은 강화학습 (Reinforcement Learning)으로 알파고가 이를 통해 만들어졌다. 앞선 방식들과 다르게 당근과 채찍을 통해 기계를 학습시킨다고 생각하면 편할 것 같다. 만약 기계한테 강아지 사진을 보여주며 '이거 강아지 사진이야?' 물었을 때 '네'라고 대답하면 +1점, '아니요'라고 대답하면 -1점 이런 식으로 학습을 시키면서 성능을 고도화시키는 것이다.


머신러닝이 문제에 대한 결과를 설명하거나 예측한다고 앞서 말했다. 설명력에 있어서는 기존 통계학적 기법들을 많이 사용하는데, 여기에는 회귀분석, 로지스틱회귀분석, 다중선형회귀분석, 의사결정나무 등이 사용된다. 하지만 예측력에 있어서는 랜덤포레스트, 앙상블 기법, 인공신경망 등을 사용하는 게 더 효과적이다. (이 부분에 대해서는 따로 이야기할 예정이다.)


딥러닝

요즘 세상은 사용자를 분석하여 미래 행동을 예측하는 것에 더 많은 투자가 이루어진다. 그래서 인공신경망을 활용한 딥러닝이 굉장히 주목받고 있다. (결국 딥러닝은 머신러닝의 지도학습에 예측력을 중점으로 한 인공신경망을 활용한 기술이라고 보면 되겠다.) 딥러닝은 쉽게 말해서 인간의 뇌 구조와 비슷한 모양을 가진 모델링으로 입력층-중간층-출력층의 복잡한 관계와 가중치를 통해서 학습이 이루어진다.

img_deeplearning_09_ann.png 출처: www.tcpschool.com

딥러닝 기술은 크게 CNN과 RNN으로 나뉜다. CNN의 경우에는 이미지 데이터를 처리하는 컴퓨터 비전 쪽에 많이 쓰이는 기술로 현재 자율주행, 얼굴인식과 관련이 있다. RNN의 경우에는 자연어 데이터를 처리하는 NLP 쪽에 많이 쓰이는 기술로 현재 챗봇, 번역기, AI 비서와 관련이 있다. 딥러닝 관련 기술들은 나날이 발전하고 있고 국내에서도 엄청난 투자가 이루어지고 있다. 딥러닝 프레임워크로는 구굴의 텐서플로우와 페이스북의 파이토치가 오픈소스로 많은 사람들에 의해 사용되고 있다.


이렇게 빅데이터, 인공지능, 머신러닝, 딥러닝에 대해 간략히 알아보았다. 물론 위 기술에 있어서 전문가는 아니지만 기획자가 알고 있으면 좋을 머신러닝과 딥러닝의 세부 설명에 대해서도 기재하려고 한다. 또한 머신러닝이나 딥러닝과 같이 데이터를 분석하고 활용하는 데이터 사이언스 분야도 중요하지만, 그전에 빅데이터를 저장하고 처리하는 데이터 엔지니어링 분야도 그에 못지않게 중요하기 때문에 이에 관한 이야기도 다룰 예정이다. 글 쓸 건 많은데 시간이 없는 요즘이다.

keyword
작가의 이전글각기 다른 광고 시장 플레이어가 바라보는 '광고'