혁신 아카데미는 혁신의 주요 이론과 개념을 소개하고 실제와 연계한 칼럼입니다.
▲ 이희정 부교수 한양대학교 산업융합학부
시장조사기관 IDC의 전망에 따르면 기업에 존재하는 데이터의 80%는 구조화되지 않은 비정형 데이터라고 한다.01
비정형 데이터란 텍스트, 이미지, 오디오/비디오, SNS, 이메일 등의 형태로 존재하며 전통적인 데이터베이스 기술이나 시스템으로는 관리가 불가능한 데이터를 의미한다.
사실 우리 주변에서 비정형 데이터의 확산은 압도적이다.
우리는 매일 이메일, 문서, 블로그, 트위터 등을 통해 비정형 데이터를 끊임없이 생성하고 있다.
비정형 데이터 중 가장 대표적인 형태는 우리가 일상적으로 사용하는 자연어(Natural language), 즉 텍스트 데이터이다.
텍스트는 다음과 같은 측면으로 매우 유용하기 때문에 관심을 갖고 연구해야 한다.
첫째, 텍스트는 우리의 지식을 기호화하기 위한 가장 자연스러운 방법이다. 그 결과 대부분의 지식은 텍스트 형태로 보관되고 유통된다.
둘째, 텍스트는 우리가 접하게 되는 가장 일반적 유형의 정보이다.
우리는 매일 텍스트 형태의 정보를 생산하고 소비한다.
셋째, 텍스트는 가장 일상적으로 표현되는 정보이다.
물론 오디오와 비디오 형태의 정보도 존재하지만, 우리는 원하는 오디오와 비디오를 검색할 때에도 텍스트 정보에 의존한다.
이 글에서는 텍스트를 중심으로 비정형 데이터를 이해하고 활용하는 방안에 대해 알아보고자 한다.
텍스트를 이해한다는 것
텍스트는 비정형 데이터를 대표하므로 텍스트를 이해하고 활용하는 것이 가장 중요한데, 주어진 텍스트를 인간이 이해하는 것처럼 컴퓨터가 이해하려면 다음과 같은 작업을 수행해야 한다.02
첫째, 어휘 분석(Lexical analysis)이다.
어휘 분석이란 문장 또는 어절을 최소 의미단위인 형태소로 분할하고 품사 태깅(Part of Speechtagging) 하는 것이다.
예컨대 “4차 산업혁명 바람이 농업에도 불고 있다”라는 문장이 주어지면, 어휘 분석을 통해 “4(숫자) + 차(의존명사) + 산업(일반명사) + 혁명(일반명사) + 바람(일반명사) + 이(주격조사) + 농업(일반명사) + 에(부사격조사) + 도(보조사) + 불(동사) + 고(연결어미) + 있(보조용언) + 다(종결어미)”의 형태소 분석 결과를 얻는다.03
둘째, 구문 분석(Syntactic analysis)이다.
구문 분석이란, 형태소들이 문장에서 어떻게 연결되어있는지를 주어, 목적어, 서술어와 같은 구문단위로 밝히는 것이다.
셋째, 의미 분석(Semantic analysis)이다.
의미분석이란 문장이 의미적으로 올바른 가를 판단하는 것이다.
“4차 산업혁명 농업이 바람에도 불고 있다”는 의미적으로 잘못된 문장이다.
넷째, 담화 분석(Discourse analysis)이다.
담화분석은 하나 이상의 문장이 주어질 때 문장의 맥락을 이해하는 것이다.
“4차 산업혁명 바람이 농업에도 불고 있다”라는 문장으로부터 우리는 다른 산업에도 4차 산업혁명에 대한 관심이 있다는 사실을 간파할 수 있다.
한편 컴퓨터가 사람처럼 텍스트를 제대로 이해하려면 다음과 같은 두 가지 대표적인 어려움을 극복해야 한다.
첫째, 인간은 기본적으로 상식(Common sense)을 가지고 있다고 가정하기 때문에 우리가 소통할 때에는 문맥 이해에 필요한 상식은 보통 생략한다.
둘째, 텍스트에는 상당 부분의 모호성(Ambiguity)이 존재하지만, 우리는 이러한 모호성을 특별한 추가정보 없이도 쉽게 해결한다.
예컨대 “4차 산업혁명 바람이 농업에도 불고 있다” 라는 문장에서 우리는 “바람”을 단순히 “공기의 움직임”으로 이해하지 않고, “관심의 이동”으로 이해할 것이다.
텍스트에는 많은 모호성이 존재하지만, 대부분의 모호성은 상식을 통해 해결될 수 있다.
하지만 컴퓨터는 이러한 작업을 수행하기가 어려우며, 모호성을 해결하는 것이 앞으로 해결해야 할 과제이다.
그럼 컴퓨터가 텍스트를 이해한다는 것이 어떻게 가능할까?
간단하면서도 유용한 기법을 소개하도록 한다.
통계 기반 언어모델
우리는 생활하면서 수많은 단어들을 사용하며, 어떤 단어는 하루에도 몇 번 이상 자주 사용하기도 하고, 어떤 단어는 한 달에 한 번 사용하기도 한다.
우리가 사용하는 단어들의 빈도를 계산하고, 우리가 사용하는 단어들의 나열 순서, 즉 문장을 통계적으로 정리할 수 있다면, 우리가 사용하는 문장이 발생할 확률을 아래와 같이 제시할 수 있다.
이러한 확률분포를 언어모델 이라고 한다.04
· P ("오늘은 수요일이다") = 0.001
· P ("알고리즘에 대한 설명은 다음과 같다") = 0.0000001
한편 언어모델은 언어가 사용되는 상황을 반영한다.
일반적인 상황에서는 “알고리즘에 대한 설명은 다음과 같다”라는 문장은 “오늘은 수요일이다”라는 문장보다 작은 확률 값을 갖는 것이 충분히 타당하다.
반면, 컴퓨터 과학 학회에서 일어나는 상황이라면, 오히려 “알고리즘에 대한 설명은 다음과 같다”라는 문장의 발생가능성이 더 높아서, 위 언어모델이 잘못된 경우일 수 있다.
즉 언어모델은 자연어의 사용과 연관된 불확실한 상황을 확률로 정량화할 수 있으며, 다음과 같이 여러가지 문제에 대해 적절한 답을 제시할 수 있다는 큰 장점을 갖는다.
1) “인공지능”과 “기계학습”이라는 단어가 주어질 때, “알고리즘”과 “아침” 중 어떤 단어가 그다음에 나올 확률이 높을까?
언어 모델은 “인공지능 아침”보다는 “인공지능 알고리즘”이 확률적으로 훨씬 타당하다고 답할 것이다.
2) 또는 우리가 만일 어떤 논문을 읽었는데, “기계학습”이라는 단어를 10번 발견하고, “신경망”이라는 단어를 5번 발견했다면, 위 논문은 컴퓨터과학과 관련된 논문일 것이라고 쉽게 분류할 수 있을 것이다.
위 과정의 원리를 좀 더 살펴보면 다음과 같다.
그림 2는 언어모델의 형태를 간단히 나타낸 것이다.05
언어모델에서 단어 “기계학습”의 확률은 문서에 존재하는 전체 단어 수 중에서 해당 단어 “기계학습”이 출현한 빈도로 나타낼 수 있으며, “기계학습”과 “알고리즘”이 동시에 출현할 확률 P(“기계학습”, “알고리즘”)는 P(“기계학습”), P(“알고리즘”)와 같이 두 단어가 발생할 개별확률의 곱으로 표시할 수 있다.
만약 그림 2에서 문서 A와 문서 B의 P(“기계학습”, “알고리즘”)의 값을 서로 비교한다면 문서 A의 확률 값이 문서 B보다 더 높은 것을 알 수 있다.
따라서 “기계학습 알고리즘”과 같이 “컴퓨터 사이언스” 주제와 관련된 문서는 B보다는 A일 가능성이 높다.
마찬가지로 “건강” 주제와 관련된 문서는 A보다는 B일 가능성이 높다.
이와 같은 접근법을 N-gram 모델이라 한다.
앞의 예제와 같이 확률 값을 계산할 때에 P(“기계학습”)와 같이 개별 단어의 출현 자체에 의미를 두는 경우를 개별 단어(N=1, uni-gram) 언어모델이라고 하며, P(“기계학습 알고리즘”)와 같이 두 개의 연속된 단어를 고려하는 경우를 두 단어(N=2, bi-gram) 언어모델이라고 한다.
즉, N이 증가할수록 단어의 앞뒤 맥락을 순차적으로 고려할 수 있다.
비정형 데이터 시대의 기회와 준비
비정형 데이터가 우리의 비즈니스와 삶에 미치는 영향과 중요성은 매일 수행하는 우리의 업무 과정에서 쉽게 발견될 수 있는데, 사실상 비정형 데이터를 사용하는 전체 과정에서 컴퓨터가 기여하는 부분은 지극히 적다.
예컨대 우리는 업무를 수행하기 위하여 기업 정보시스템에서 비교적 정형적인 데이터를 찾고, 파일 시스템에서 여러 문서를 찾고, 또는 인터넷에서 텍스트로 이루어진 최신 정보를 찾는다.
일단 필요한 정보를 찾은 후 대부분의 분석과 정리는 수작업으로 이루어진다.
이러한 수작업은 우리가 다루는 데이터의 양이 비교적 적거나, 수행하는 작업에 요구되는 시간이 충분하거나, 또는 우리가 텍스트를 이해할 시간이 충분하다는 조건에서 이루어진다.
하지만 최근 기하급수적으로 증가하는 비정형 데이터 시대에서는 앞에서 언급한 수작업 분석으로는 신속하고 정확한 정보를 얻기가 대단히 어려울 것이다.
따라서 비정형 데이터를 효과적이고 효율적으로 처리해야 하는 요구와 수요는 계속 증가할 것이다.
비정형 데이터를 처리하는 기술은 크게 두 가지 형태이다.
첫째, 우리가 현재 수작업으로 진행하는 텍스트 수집, 분석 과정을 대체하는 기술이다.
예를 들어 수많은 문서와 이메일을 주제에 따라 분류해 주고 우리의 시간을 벌어주는 일이다.
하지만 이러한 기술은 우리의 생산성을 크게 증가시킬 수는 있지만, 인간이 수행하는 과업 이상의 새로움을 제공해 주지는 못한다.
둘째, 우리가 아주 충분한 시간동안 수많은 텍스트를 다 읽고 이해하지 못한다면 결코 발견할 수 없는 지식을 찾아내는 기술이다.
예를 들어 생물의학계 저널 분석기는 여기저기 존재하는 연구 결과로부터 유전자와 질병 관계의 종합적인 연관관계를 발견하고 특수 질병을 다룰 수 있는 유전자 치료제를 고안하는 기회를 찾을 수 있다.
또한 과학기술자는 관심있는 연구 문헌을 조사 분석하여 기술동향 분석 및 새로운 연구 기회를 탐색할 수 있을 것이며, 서로 다른 분야에서 진행하는 유사한 연구 주제를 발견하여 융합연구의 초석을 마련할 수도 있다.
이처럼 비정형 데이터의 방대한 양과 범위를 고려할 때, 우리는 숨어있는 유용한 지식을 발견할 수 있으며, 그 활용 가치는 무한대에 가깝다.
한편 비정형 데이터의 기회 이면에는 주의해야 할 사항이 있다.
기업은 지식자산, 영업비밀, 재무자산 등 외부에 공개하기에 민감한 데이터들이 있다.
이들은 정형 데이터로 분류되어 기업 정보시스템에 저장되고 보안정책에 따라 철저히 관리되고 있다.
하지만, 이메일 해킹사건과 같이 정형 데이터로부터 2차, 3차 가공되는 비정형 데이터의 유출사고가 발생되어 보안이 요구된 정형 데이터의 연쇄 유출이 우려되고 있다.
기업은 비정형 데이터를 수집하고 분석할 수 있는 기술을 준비하는 동시에, 기업에 민감한 정보가 외부로 유출되어 기업이 큰 타격을 입지 않도록, 비정형 데이터의 특성에 부합하는 데이터 통합 관리(Data governance)에도 대비해야 하겠다.
01 http://www.emc.com, “The digital universe of opportunities”, 2014.
02 C. Zhai, S. Massung, “Text Data Management and Analysis: A Practical Introduction to Information Retrieval and Text Mining”, ACM, 2016
03 < 세종계획 말뭉치 품사태그 집합 >을 사용하였다.
04 Y. Bengio, “Neural net language models”. Scholarpedia, 2008
05 언어모델은 개별 단어 또는 단어들의 나열 순서에 대한 확률분포를 의미한다.