
계산사회과학이란 무엇인가? 일반적으로 계산사회과학은 대규모의 복잡한 인간 행동 데이터에 대해 계산적인(computational) 방법을 적용하는 학제간 분야이다. 전통적인 사회과학이 주로 설문조사, 인터뷰, 행정자료, 소규모 실험 등에 의존해 왔다면, 계산사회과학은 디지털 환경에서 생성되고 측정되는 대규모 데이터와 컴퓨터에 기반한 분석 방법을 적극적으로 활용한다는 점이 특징이다. 유저들 간의 소통과 관계를 보여주는 소셜네트워크 데이터, 뉴스 기사나 온라인 커뮤니티 글 같은 텍스트 데이터, 인터넷에 올라오는 음성과 비디오 데이터(audiovisual data), 웹스크래핑을 통해 획득한 기타 다양한 디지털 자료 등이 연구의 주 대상이 된다. 또 이미 존재하던 행정 데이터, 역사자료, 설문조사 데이터 등에 서로 다른 데이터셋을 연결하고 통합하는 기록 연계(record linkage), 기계학습(머신러닝, machine learning), 텍스트 분석(text-as-data), 네트워크 분석, 성씨와 지역 정보를 이용한 베이지안 인종 추정방법(BISG, Bayesian Improved Surname Geocoding) 등 다양한 방법론이 모두 계산사회과학에 포함된다.
여기서 언제나 나오는 질문이 “데이터사이언스와는 어떻게 다른가요?”이다. 기업이나 산업 쪽에서 응용 및 예측(prediction)에 초점을 두면 데이터사이언스고, 사회과학에서 학문으로서 설명(explanation)에 초점을 두면 계산사회과학이라고 부를 수 있다. 같은 도구가 다른 용도가 있을 뿐이다. “그러면 빅데이터는요?” 이제 한물 간 용어인 빅데이터는 (당연하게도) 데이터의 규모가 크고, 따라서 그것을 보관하고 불러올 때 특수한 기술이나 프로그램(이를테면 Apache Hadoop이라거나)이 필요한 경우를 이야기할 때 주로 사용되는 표현이며, 기술 발전 덕분에 빅데이터가 무엇인지는 시간에 따라 바뀌기 마련이다. (박사 과정 때 어디 가서 다루는 데이터가 좀 커서 어렵다고 했다가 어느 대학 정교수가 테라바이트도 안 되는 걸 가지고 어디서 빅데이터냐고 면박을 준 적 있다.) 다만 빅데이터와 계산사회과학의 교차점이라면, 어느 정도 대규모 데이터여야 계산사회과학이라는 단어가 붙기 마련이라는 것이다. 스무 개 남짓의 텍스트를 분석하려면 질적인 방법을 쓰는 것이 맞겠지만, 수십 만 개의 텍스트를 분석하려면 컴퓨터의 힘을 빌려야 하지 않겠는가.
즉 계산적인 방법의 힘을 빌려 기존에 접근하기 어려웠던 규모와 종류의 데이터를 다룰 수 있게 해주는 것, 그것을 통해 사회과학에서 새로운 이해와 설명, 함의를 찾는 것이 계산사회과학이라고 할 수 있을 것이다. 따라서 계산사회과학은 기존의 전통적인 사회과학방법론을 대체하는 것이 아니라 확장된 도구로서 기존 연구의 빈 곳을 메꿔주는 역할이라고 생각할 수 있다.
다만 계산사회과학에서 데이터 윤리(ethics) 및 접근가능성(accessibility)의 문제는 항상 함께 제기된다. 디지털 환경에서 생성되는 데이터는 겉으로 보기에 공개된 데이터처럼 보일 때가 많지만, 실제로는 개인의 사생활과 밀접하게 연결되어 있거나 특정 플랫폼 기업의 정책에 의해 접근이 제한되는 경우가 많다. 예컨대 소셜미디어 데이터는 연구자에게 매우 매력적인 자료이지만, 이용자들이 연구 목적으로 자신의 행동 데이터가 분석될 것까지 충분히 인지하고 있는지에 대한 논쟁이 끊이지 않는다. 또한 플랫폼의 API 정책 변화나 서비스 종료 등에 따라 동일한 데이터를 다시 수집하는 것이 불가능해지는 경우도 흔하다. 게다가 기업 등에서 제공하는 데이터의 경우 소수의 부유한 대학/연구자들이 독점하게 되는 구조를 띠고 있으며, 그게 아니더라도 이러한 대규모 데이터를 보관하고 이용할 수 있는 인프라가 없으면 활용이 어렵다. 이러한 문제는 계산사회과학 연구가 단순히 기술적인 문제를 넘어서, 연구 윤리와 데이터 접근성의 문제를 함께 고민해야 함을 보여준다.
또한 계산사회과학에서 굉장히 중요하게 여겨지는 것 중 하나는 재현가능성(reproducibility)이다. 같은 데이터와 같은 방법을 사용했을 때 동일한 결과가 다시 나와야 한다는 것은 과학 연구의 기본 원칙이지만, 계산사회과학에서는 특히 더 중요한 의미를 갖는다. 분석 과정이 복잡한 코드와 데이터 처리 단계로 이루어져 있기 때문에, 연구자가 어떤 전처리를 했는지, 어떤 모델을 사용했는지, 어떤 파라미터를 설정했는지가 명확하게 기록되지 않으면 연구 결과를 검증하거나 확장하기가 어렵다. 그래서 많은 계산사회과학 연구에서는 분석 코드를 공개하고, 가능한 경우 데이터 역시 함께 공유하며, 연구 과정을 투명하게 문서화하는 것을 중요한 규범으로 삼는다. GitHub나 Code Ocean 같은 코드 저장소를 활용하거나, 연구 재현을 위한 워크플로우, 그리고 심지어 소프트웨어 패키지의 버전까지 함께 제공하는 것도 이러한 맥락에서 등장한 관행이다. 물론 개인정보 보호나 데이터 사용 계약 때문에 원자료를 그대로 공개할 수 없는 경우도 많지만, 최소한 분석 절차와 코드라도 공개함으로써 다른 연구자가 결과를 검증하거나 유사한 데이터로 재현 연구를 수행할 수 있도록 하는 것이 권장된다. (그런 의미에서 계정이 없다면 오늘 GitHub에 가입하도록 하자!)
계산사회과학은 강력한 도구 모음집이지만, 계산사회과학을 적용하려고 무턱대고 뛰어들기보다는 내 연구 질문이 무엇인지, 그 연구 질문에서 왜 필요 한지를 곰곰이 생각해보는 단계가 꼭 필요하다. 기억하자: 내가 망치를 들고 있다고 해서 모든 것이 못인 것은 아니다.
📝 김서영 (서울대 정치외교학부 교수)
계산사회과학이란 무엇인가? 일반적으로 계산사회과학은 대규모의 복잡한 인간 행동 데이터에 대해 계산적인(computational) 방법을 적용하는 학제간 분야이다. 전통적인 사회과학이 주로 설문조사, 인터뷰, 행정자료, 소규모 실험 등에 의존해 왔다면, 계산사회과학은 디지털 환경에서 생성되고 측정되는 대규모 데이터와 컴퓨터에 기반한 분석 방법을 적극적으로 활용한다는 점이 특징이다. 유저들 간의 소통과 관계를 보여주는 소셜네트워크 데이터, 뉴스 기사나 온라인 커뮤니티 글 같은 텍스트 데이터, 인터넷에 올라오는 음성과 비디오 데이터(audiovisual data), 웹스크래핑을 통해 획득한 기타 다양한 디지털 자료 등이 연구의 주 대상이 된다. 또 이미 존재하던 행정 데이터, 역사자료, 설문조사 데이터 등에 서로 다른 데이터셋을 연결하고 통합하는 기록 연계(record linkage), 기계학습(머신러닝, machine learning), 텍스트 분석(text-as-data), 네트워크 분석, 성씨와 지역 정보를 이용한 베이지안 인종 추정방법(BISG, Bayesian Improved Surname Geocoding) 등 다양한 방법론이 모두 계산사회과학에 포함된다.
여기서 언제나 나오는 질문이 “데이터사이언스와는 어떻게 다른가요?”이다. 기업이나 산업 쪽에서 응용 및 예측(prediction)에 초점을 두면 데이터사이언스고, 사회과학에서 학문으로서 설명(explanation)에 초점을 두면 계산사회과학이라고 부를 수 있다. 같은 도구가 다른 용도가 있을 뿐이다. “그러면 빅데이터는요?” 이제 한물 간 용어인 빅데이터는 (당연하게도) 데이터의 규모가 크고, 따라서 그것을 보관하고 불러올 때 특수한 기술이나 프로그램(이를테면 Apache Hadoop이라거나)이 필요한 경우를 이야기할 때 주로 사용되는 표현이며, 기술 발전 덕분에 빅데이터가 무엇인지는 시간에 따라 바뀌기 마련이다. (박사 과정 때 어디 가서 다루는 데이터가 좀 커서 어렵다고 했다가 어느 대학 정교수가 테라바이트도 안 되는 걸 가지고 어디서 빅데이터냐고 면박을 준 적 있다.) 다만 빅데이터와 계산사회과학의 교차점이라면, 어느 정도 대규모 데이터여야 계산사회과학이라는 단어가 붙기 마련이라는 것이다. 스무 개 남짓의 텍스트를 분석하려면 질적인 방법을 쓰는 것이 맞겠지만, 수십 만 개의 텍스트를 분석하려면 컴퓨터의 힘을 빌려야 하지 않겠는가.
즉 계산적인 방법의 힘을 빌려 기존에 접근하기 어려웠던 규모와 종류의 데이터를 다룰 수 있게 해주는 것, 그것을 통해 사회과학에서 새로운 이해와 설명, 함의를 찾는 것이 계산사회과학이라고 할 수 있을 것이다. 따라서 계산사회과학은 기존의 전통적인 사회과학방법론을 대체하는 것이 아니라 확장된 도구로서 기존 연구의 빈 곳을 메꿔주는 역할이라고 생각할 수 있다.
다만 계산사회과학에서 데이터 윤리(ethics) 및 접근가능성(accessibility)의 문제는 항상 함께 제기된다. 디지털 환경에서 생성되는 데이터는 겉으로 보기에 공개된 데이터처럼 보일 때가 많지만, 실제로는 개인의 사생활과 밀접하게 연결되어 있거나 특정 플랫폼 기업의 정책에 의해 접근이 제한되는 경우가 많다. 예컨대 소셜미디어 데이터는 연구자에게 매우 매력적인 자료이지만, 이용자들이 연구 목적으로 자신의 행동 데이터가 분석될 것까지 충분히 인지하고 있는지에 대한 논쟁이 끊이지 않는다. 또한 플랫폼의 API 정책 변화나 서비스 종료 등에 따라 동일한 데이터를 다시 수집하는 것이 불가능해지는 경우도 흔하다. 게다가 기업 등에서 제공하는 데이터의 경우 소수의 부유한 대학/연구자들이 독점하게 되는 구조를 띠고 있으며, 그게 아니더라도 이러한 대규모 데이터를 보관하고 이용할 수 있는 인프라가 없으면 활용이 어렵다. 이러한 문제는 계산사회과학 연구가 단순히 기술적인 문제를 넘어서, 연구 윤리와 데이터 접근성의 문제를 함께 고민해야 함을 보여준다.
또한 계산사회과학에서 굉장히 중요하게 여겨지는 것 중 하나는 재현가능성(reproducibility)이다. 같은 데이터와 같은 방법을 사용했을 때 동일한 결과가 다시 나와야 한다는 것은 과학 연구의 기본 원칙이지만, 계산사회과학에서는 특히 더 중요한 의미를 갖는다. 분석 과정이 복잡한 코드와 데이터 처리 단계로 이루어져 있기 때문에, 연구자가 어떤 전처리를 했는지, 어떤 모델을 사용했는지, 어떤 파라미터를 설정했는지가 명확하게 기록되지 않으면 연구 결과를 검증하거나 확장하기가 어렵다. 그래서 많은 계산사회과학 연구에서는 분석 코드를 공개하고, 가능한 경우 데이터 역시 함께 공유하며, 연구 과정을 투명하게 문서화하는 것을 중요한 규범으로 삼는다. GitHub나 Code Ocean 같은 코드 저장소를 활용하거나, 연구 재현을 위한 워크플로우, 그리고 심지어 소프트웨어 패키지의 버전까지 함께 제공하는 것도 이러한 맥락에서 등장한 관행이다. 물론 개인정보 보호나 데이터 사용 계약 때문에 원자료를 그대로 공개할 수 없는 경우도 많지만, 최소한 분석 절차와 코드라도 공개함으로써 다른 연구자가 결과를 검증하거나 유사한 데이터로 재현 연구를 수행할 수 있도록 하는 것이 권장된다. (그런 의미에서 계정이 없다면 오늘 GitHub에 가입하도록 하자!)
계산사회과학은 강력한 도구 모음집이지만, 계산사회과학을 적용하려고 무턱대고 뛰어들기보다는 내 연구 질문이 무엇인지, 그 연구 질문에서 왜 필요 한지를 곰곰이 생각해보는 단계가 꼭 필요하다. 기억하자: 내가 망치를 들고 있다고 해서 모든 것이 못인 것은 아니다.
📝 김서영 (서울대 정치외교학부 교수)