박성현 | 서울대학교 통계학과 명예교수

FOCUS

데이터 사이언스의 핵심은
빅데이터

앞으로 사회발전에 가장 기여도가 큰 학문은 데이터과학

4차 산업혁명은 빅데이터, 인공지능, 사물인터넷(IoT), 메타버스 등으로 불리는 소프트웨어와 데이터 기반의 지능 디지털 기술(intelligent digital technology) 혁명을 말한다. 이 혁명은 우리의 산업과 생활방식을 급격히 바꾸어 놓고 있으며, 인류 문명에 주는 영향도 엄청나다.

4차 산업혁명의 근간에는 다량의 데이터를 소프트웨어와 연계하여 신속정확하게 정보를 창출하고 활용하는 과학이 중요성을 띄고 있다. 이런 학문을 데이터과학(data science), 혹은 데이터 사이언스라고 부른다. 데이터과학은 데이터의 수집과 저장에 필요한 데이터 프로세싱 기술과 데이터 분석에 관한 지식(통계학, 데이터 마이닝, 기계학습 등)을 기반으로 다량의 데이터로부터 패턴을 찾아내고, 통계적 추정, 예측 모델링 등을 통하여 필요한 정보를 창출하고, 이를 실제로 활용하는 것을 연구하는 융합과학(convergence science)이다. 어쩌면 21세기 사회발전에 가장 기여도가 큰 학문은 데이터과학이 될 것이라고 예측된다.

[그림 1] 데이터과학의 전체 조감도(자료:한국과학기술한림원(2019)

넓은 의미에서 데이터과학의 전체 조감도를 그려보면 [그림 1]과 같다. 데이터과학은 빅데이터와 인공지능(AI) 기술을 이용하여 통찰력(insight) 있는 정보를 만들어내기 위해 태어난 새로운 학문이다. 데이터과학의 밑바탕이 되는 기존의 학문들은 수학, 통계학, 컴퓨터과학, 데이터 분석학(analytics), 데이터 시각화(visualization), 비즈니스 인텔리전스(intelligence) 등으로 명실공이 다학제 간 연구 학문이다. 데이터과학은 빅데이터를 처리⋅분석⋅저장할 수 있도록 물리적 환경을 조성해 주는 데이터관리(data management) 분야와 데이터로부터 모델을 만들어 AI로 구현할 수 있도록 해주는 기계학습(machine learning) 분야로 나누어진다. 모든 단계마다 사람이 개입하여 조절 및 통제하는 인간과의 상호작용(human interaction)이 적용되며, 이 때 사용되는 기술로는 탐색적 데이터분석, 컴퓨터 비전, 자연어 처리, 음성 인식, 로보틱스 등이며, 궁극적으로는 다양한 산업에 적용되어 새로운 제품 및 서비스를 창출함으로써 인간의 삶을 풍요롭게 해준다.

빅데이터는 어떻게 분석할 수 있을까

빅데이터는 데이터 형식(정형 데이터, 비정형 데이터 등)이 다양하고 생성 속도가 빨라 새로운 관리분석 기법이 필요한 대용량의 데이터를 말하고, 흔히 대용량(Volume), 빠른 속도(Velocity) 및 높은 다양성(Variety)의 속성(3V)을 가진 정보 자원으로 정의한다. 여기에 추가하여 최근에는 데이터의 신뢰성(Veracity), 불안정성(Volatility)을 포함하여 5V의 속성을 가진 데이터로 정의하기도 한다.

데이터과학의 핵심 기술인 빅데이터는 그 분석의 흐름도로 Wikipedia 사전은 [그림 2]를 제시했다. 이 그림에서 보면 원시데이터를 먼저 수집(raw data collected)하고, 이를 프로세싱하여(data is processed) 정리하고 저장하고, 다음으로 잘못된 데이터를 제거하여 깨끗한 데이터(clean dataset)를 만드는 작업을 수행한다. 여기까지는 주로 전산과학(computational science)의 연구영역이다. 다음 단계는 탐색적 데이터분석(exploratory data analysis)과 모델링(models & algorithms)으로 이는 통계학 및 응용수학의 연구영역이다.

그 다음 단계로는 소통하고 시각화하여 보고서(communicate, visualize and report)를 작성하고 의사결정에 중요한 정보를 제공하는 것이다. 이는 전문 학문 영역(예로, 경영학, 산업공학, 보건학 등)의 영역이라고 볼 수 있다. 데이터 결과물(data product)은 현실을 정확히 반영하여야 하며, 이는 다음 단계의 원시데이터 수집에 가이드라인 역할을 하는 것이다. 즉, 빅데이터 분석을 제대로 하려면 전산과학, 통계학, 응용수학, 전문 학문(경영학, 산업공학, 보건학 등) 등의 협업이 필요한 경우가 대부분이다.

[그림 2] 빅데이터 분석의 흐름도 (출처: Wikipedia)

이제 4차 산업혁명의 정보폭발 시대를 맞아 다양한 경로로 취합된 빅데이터에서 숨은 정보와 새로운 지식을 발굴하여 혁신을 도모하려는 노력이 모든 분야에 확산되면서 빅데이터와 데이터과학이 차세대 지식혁명을 이끌 주역으로 부상하고 있다. 이미 오래전 미국의 McKinsey(2011) 보고서에 의하면 기업의 빅데이터 활용은 고객의 행동을 미리 예측하고 대처방안을 마련해 기업경쟁력을 강화시키고, 생산성 향상과 비즈니스 혁신을 가능하게 한다고 말했다. 이 주장은 정확히 맞아 들어가고 있으며, 지금은 기업 경영에서 빅데이터를 빼놓고 생각할 수 없는 시대가 되었다.

사례를 통해 살펴보는 빅데이터의 활용

빅데이터 분석 사례는 우리 주위에 수없이 많으나 우선 다음의 간단한 사례들을 살펴보자.

(1) 구글의 독감 동향 시스템 빅데이터 사례

구글 검색사이트는 세계에서 가장 인기 있는 검색사이트로, 구글은 독감과 관련된 검색어 빈도를 분석해 독감 환자 수와 유행 지역을 예측하는 독감 동향 서비스를 개발했다. 이는 미 질병통제본부보다 예측력이 뛰어나고, 1∼2주 더 빠르게 실시간으로 서비스를 제공하고 있다. 구글은 2003년부터 개별 검색어 수천억개를 분석해 ‘감기’와 관련된 45개의 단어들을 찾아내었으며 이를 분석함으로써 특정 지역의 독감의 유행 수준을 예측하는 시스템을 개발했다.

매년 독감 시즌마다 특정 검색어 패턴이 눈에 띄게 나타나는 것을 발견하고 이 검색어들을 미국 질병통계예방센터(CDC)의 데이터와 비교해 보았는데, 주간 검색 빈도와 독감 증세를 보인 환자 수 사이에 매우 밀접한 패턴을 발견한 것이다. 이를 통해 감기 관련 질병에 걸린 사람의 수를 예측할 수 있었다. CDC의 감기 감시 시스템은 데이터를 집계하고 발표하는데 12주 정도의 시간이 소요되지만, 구글 검색어는 이 같은 과정을 지동화를 통해 실시간으로 처리할 수 있어 순발력 있게 유용한 감기 정보를 제공할 수 있는 것이다. 빅데이터 분석의 위력이다.

(2) ‘복지 사각지대’ 없애는 보건복지부 빅데이터 사례

우리 정부에서 빅데이터를 잘 활용하는 부처 중 하나는 보건복지부다. 이 내용 중의 일부는 조선일보(2018년 3 월 9일자)에도 게재되어 있다. 보건복지부는 2016년부터 ‘복지 사각지대’ 발굴에 빅데이터를 활용해 왔다. 이 사업을 ‘빅데이터를 활용한 위기 가구 사전 발굴 지원 사업’이라고도 부르고, 그 과정이 [그림 3]에 요약되어 있다.

부모가 이혼한 14세 P군은 치매에 걸린 할아버지, 신장 투석을 받는 할머니와 함께 살고 있다. 2017년 7월에 P 군의 아버지가 교도소에 수감되면서 생계가 어려워지자 할머니는 대출을 받고 사채까지 끌어 써야 했다. 생계가 막막해진 P군 가정도 빅데이터를 통해 징후가 포착됐다. 빅데이터 분석으로 문제를 감지한 동사무소 직원은 2018년 1월 P군 가정을 방문해 월 117만원을 긴급 지원하고, 기초생활수급자 신청을 도와주었다.

[그림 3] 복지 사각지대 발굴을 위한 빅데이터 활용 (자료=보건복지부)

보건복지부는 고용노동부와 경찰청을 비롯한 정부 부처와 한국전력공사, 신용정보원 등 14개 기관으로부터 27종의 빅데이터를 수집하고 있다. 단전, 단수, 건보료 체납, 실직 여부 등 경제적 어려움을 겪는 가정에 자살을 시도한 사람이 있는지와 같은 정신적 문제를 살펴볼 수 있는 응급의료센터 등의 자료도 포함된다. 이렇게 수집한 자료를 통계 모델로 분석해 생계 위험에 빠졌다고 판단되는 ‘고위험군 가정’을 가려낸 뒤 각 지자체에 이 내용을 전달하는 것이다. 그러면 읍⋅면⋅동 단위 지자체 직원의 현장 방문 조사가 가능해지는 것이다. 2017년에는 빅데이터를 통해 약 30만 명 고위험군을 가려내 이 중 7만 7,000명(25.6%)에게 복지서비스를 지원했다. 빅데이터의 특성상 시간이 지나면서 더 많은 정보가 쌓이면 지금보다 더 손쉽고 정확하게 고위험군을 가려내 지원이 가능할 것이다.

(3) 빅데이터 통계분석 사례 : 서울특별시 노인 건강조사

① 데이터와 분석 목적
이번 사례에서는 빅데이터에서 실제 통계분석을 어떻게 하는지 살펴보자. 원데이터 파일은 2020년에 작성된 ‘20년도 서울특별시 지역사회 건강조사 데이터’이며, 이 파일에서 연령이 65세 이상인 시민을 추출하여 데이터의 크기가 n = 5,938명인 파일을 만들어 저자팀이 분석하였다. 데이터의 양이 빅데이터라고 보기는 어렵지만 빅데이터 분석의 대표적 사례이므로 여기에 소개하고자 한다.

분석 목적은 ‘코로나로 인해 65세 이상의 노인들이 활동 제약으로 인해 본인이 느끼는 ‘주관적 스트레스 지수’가 증가되었고, 이는 건강에 영향을 주고 있다’라는 가설을 검정해 보고, 이를 통계적으로 확인해 본 것이다. 통계분석을 위해서는 사용가능한 통계 프로그램이 다양(SAS, SPSS, R, Python, Excel 등)하게 많으나 우리 주위에서 접하기 쉬운 Excel을 사용하여 분석하였다. 이 분석에서 사용된 변수들은 성별, 연령(만 나이), 현재 흡연여부, 연간 일주일 아침 식사 평균 횟수, 하루 평균 수면시간, 우울감 경험 여부, 고혈압 진단 경험 여부, 당뇨병 진단 경험 여부, 행복감 지수, 주관적 건강지수, 보건기관 이용 여부, 주관적 스트레스 지수, 연간 낙상 경험 여부, 연간 사고중독 경험 여부 등이다. 이 데이터에 대한 서울특별시의 지역사회건강조사 원시자료 사용 지침서에 따르면 각 변수에 설정된 코딩 값은 다음과 같다.

② 변수와 변수값 코딩

③ 변수들 간의 상관분석
위에 열거된 모든 변수들 간에 상관관계가 존재하는가를 알아보기 위하여 상관분석을 실시하여 [표 1]에 상관분석표를 작성하였다. 상관분석을 모든 두 변수들 간의 상관관계를 알아보는 통계적 분석 방법이다. 상관계수 r은 –1<=r<=1의 범위 내에서 두 변수 간의 상관관계를 내는 측도이다. 즉, r이 양이면 양의 상관관계를, 음이면 음의 상관관계를 나타낸다. 이 상관계수의 절댓값이 1에 가까울수록 높은 상관관계를 나타내는 것이다.

표본의 크기가 작을 때에는 상관계수 r의 절댓값이 제법 커야 상관관계가 유의(significant) 하지만, 표본의 크기가 이 분석에서 사용하는 것과 같이 1,000보다도 클 때에는 r의 절댓값이 0.05만 되어도 유의하다. ‘주관적 스트레스 지수’가 주요한 관심 변수이므로, 이 변수와 상관계수의 절댓값이 0.05인 변수들은 ‘우울감 경험 여부’ (r = 0.29), ‘주관적 건강 지수’ (r = –0.23), ‘행복감 지수’ (r= 0.10), ‘수면시간’ (r = 0.06), ‘만 나이’ (r = 0.09), ‘성별’ (r = -0.08), ‘연간 낙상 경험 여부’ (r = 0.09), ‘연간 사고중독 경험 여부’ (r = 0.05)가 있다.

상관계수 값의 해석은, 예를 들면, ‘주관적 스트레스 지수’와 ‘우울감 경험 여부’ 간의 상관계수가 r = 0.29(양의 상관관계)이므로, 우울감 경험이 적을수록, 주관적 스트레스 지수값이 높아져서 스트레스를 거의 느끼지 않는 것이다(주관적 스트레스 지수값은 작으면 스트레스가 심하고, 크면 스트레스가 적은 것으로 코딩되어 있음). 두 번째로 상관계수 값이 큰 주관적 건강수준은 r = -0.23(음의 상관관계)인데, 이는 주관적 건강 지수값이 커지면(건강이 나빠짐) 주관적 스트레스 지수값이 작아져 스트레스를 많이 느끼게 된다는 의미이다.

[표1] 변수들 간의 상관분석표

④ 주요 변수들 간의 회귀분석
‘주관적 스트레스 지수’에 크게 상관관계가 있는 변수로 ‘우울감 경험 여부’와 ‘주관적 건강수준’이 앞의 상관분석에서 얻어졌다. ‘주관적 스트레스 지수’를 종속변수(dependent variable) Y로 하고, 이 Y에 영향을 주는 독립변수(independent variables)로 ‘우울감 경험 여부’를 X1으로 하고, ‘주관적 건강수준’을 X2로 하여 이들 간의 회귀분석(regression analysis)을 실시하여 Y와 X1과 X2 간의 방정식 관계를 규명해 보았다. 이처럼 회귀분석은 종속변수에 영향을 주는 1개 이상의 독립변수 간의 함수관계를 방정식으로 규명해보는 통계분석 방법으로, 빅데이터 분석에서 애용된다. 통계분석 출력은 [표 2]와 같다.

[표2] 회귀분석 출력표

회귀분석 결과표에 나와 있는 정보를 사용하여 변수들 간의 회귀방정식을 써보면
Y의 추정치 = 2.693878 + 0.526655X1 - 0.17228X2

가 얻어진다. 이 방정식이 의미하는 것은 X1(우울감 경험 여부)이 한 단위 증가할 때 Y(주관적 스트레스 지수)의 추정치가 0.526655 증가한다는 뜻이다. 즉, 변수의 코딩에서 보면 X1이 증가하는 것은 우울감 경험이 없는 방향으로 가는 것이고, Y가 증가하는 것은 스트레스가 적어지는 것이므로, 결국 우울감 경험이 적을수록 스트레스가 적어지는데, 그 양이 X1의 값이 1에서 2로 갈 때 Y의 값은 0.526655 정도 증가한다는 의미이다. 이와 유사하게 X2에 대해서도 해석할 수 있는데, 주관적 건강지수가 한 단위 증가하면 Y(주관적 스트레스 지수)가 0.17228만큼 감소하여 스트레스가 적어지는 것이다.

이와 같이 빅데이터 분석을 통하여 변수들 간의 관계에 대한 정보를 얻으면 이에 따라 서울 시민을 위한 보건정책을 세울 수 있는 것이다. 예를 들면, 주관적 스트레스 지수에 우울감 경험 여부와 주관적 건강 지수가 영향을 크게 주며, 그 관계의 양적 영향을 알았으므로, 주관적 스트레스 지수를 줄이기 위해서는 우울감을 경험하지 않도록 하는 방안을 세울 수 있고, 또한 주관적 건강 지수가 양호하게 관리되도록 하는 보건 정책을 입안할 수도 있을 것이다. 이렇게 유용한 정보를 주는 분석으로 빅데이터 분석이 최근 많이 사용된다. 회귀분석은 위에서 한 바와 같이 모든 관심 있는 변수들 간에 방정식을 구하여 그들 간의 함수 관계를 통계적으로 규명할 수 있다. 매우 유용한 방법이다.