조건부 확률, 곱셈법칙, 베이즈 정리(1)

상호 관련된(혹은 관련된 것으로 추정되는) 두 사건이 있을 때, 그 중 하나의 사건(사건 A라고 하자)이 발생하면 다른 하나의 사건(사건 B라고 하자)이 발생할 확률에 대해 이전(사건 A가 발생하기 전)보다 좀 더 잘 예측할 수 있을 것이다. 그러한 예측을 수학적으로 가능하게 해주는 지식이 조건부 확률, 곱셈법칙 그리고 베이즈 정리(Bayes’ Theorem)이다. 그 세 가지 법칙(혹은 정리)은 논리적으로 깊이 연관되어 있다.

다음과 같이 사건을 정의한다.

A: 사건 A의 발생, B: 사건 B의 발생

(조건부 확률) 사건 A의 발생 확률이 사건 B의 발생에 의해 영향을 받는다면, 두 사건의 발생확률 사이의 관계를 다음과 같이 나타낼 수 있을 것이다.

말로 풀어보면, 사건 B가 발생했을 때 사건 A가 발생할 확률–사건 A의 조건부 확률–은 사건 A와 사건 B가 동시에 발생할 확률–사건 A 와 사건 B의 결합확률–을 사건 B의 발생 확률–조건이 되는 사건 B의 주변확률–로 나눈 값이다.

(곱셈 법칙) 정리(1)에서 양변에 를 곱하고, 좌변과 우변을 이항하면 다음 결과를 얻는다.

말로 풀어보면, 사건 A와 사건 B가 동시에 발생할 확률–사건 A와 사건 B의 결합 확률–은 조건이 되는 사건 B가 발생할 확률과 사건 A의 조건부 확률의 곱이다.

(베이즈 정리) 확률의 교환법칙에 따르면,

그리고 우변에 곱셈법칙을 적용하면,

결합확률을 조건부 확률과 조건의 주변확률로 표현하기 위해 식(2)와 식(4)를 식(3)에 대입하면,

이 식의 양변을 로 나누면,

이 식이 베이즈 정리(Bayes’ Theorem)이다. 말로 표현하면, 사건 A의 조건부 확률은 사건 A의 발생 확률에 사건 B의 조건부 확률을 곱한 값을 조건 사건 B의 주변확률로 나눈 값이다.

이 정리는, 조건이 되는 사건 B의 발생을 기준으로 다르게 해석될 수 있다. 즉, 는 사전 확률(prior probability 혹은 간단히 prior)이며, 는 사후 확률(posterior probability 혹은 간단히 posterior)이다. 그리고 와 는 예측을 위한 데이터(혹은 정보)이다.

베이즈 정리는, 어떤 사건(여기서는 사건 A)과 관련된 사건(여기서는 사건 B)에 관한 데이터(혹은 정보)를 얻었을 때 그 사건(사건 A)에 대한 향상된 예측을 할 수 있게 해준다. 그 과정은  로 표현할 수 있다.

논의가 추상적이니 몇 개의 응용 사례를 가지고 조건부 확률, 곱셈 법칙, 베이즈 정리를 보다 구체적으로 살펴보자. (윤영민, 2018-05-25)

데이터를 다시 생각한다(2): 사회과학적 관점

어떤 사회 제도(social institutions)나 존재 이유와 내부 질서(혹은 구조)를 갖고 있다. 하나의 사회제도로서 과학—사회과학을 포함—도 그렇다. 과학의 존재 이유는 진리(truth)(다르게 표현하면, 지식, knowledge)의 탐구이며, 과학의 내부 질서는 주로 고유한 연구방법–다시 말해 과학적 지식이 생성되는 방법–에 달려 있다.

과학적 지식은 연역적 추론(deductive reasoning), 귀납적 추론(inductive reasoning), 혹은 유추(analogy)와 같은 방법으로 생성된다. 삼단논법에 보듯이 보편적 전제로부터 개별적 결론이 도출될 수도 있고(연역적 추론), 개별적 사실들로부터 일반적 원리를 끌어낼 수도 있으며(귀납적 추론), 한 사물이나 현상을 보고 다른 사물이나 현상에 대해 추측할 수도 있다(유추).

과학에서는 어떤 이론이나 가설도 경험적 검증을 거쳐야 지식으로 인정받게 된다. 가설(hypothesis)을 세우고(그것은 이론으로부터 도출될 수도 있고 선행연구의 발견으로부터 가져올 수도 있다), 관찰, 실험, 인터뷰 등 과학적이라고 인정되는 방법으로 데이터를 수집한 다음, 그것을 가지고 가설을 검증한다. 가설 검증 과정에서 연역적 추론, 귀납적 추론, 유추 등이 사용된다.

가설은 데이터에 의해 지지되거나(supported) 기각되며(rejected), 기각된 경우에는, 새로운 방법이나 새로운 데이터를 가지고 가설을 재검증하거나 가설을 수정하여 다시 검증하기도 한다. 가설이 한번에 검증되는 경우는 없으며 반복적인 검증을 통과해야 한다. 그런 의미에서 모든 이론과 가설–다시 말해, 지식–은 잠정적(temporary)이라고 말할 수 있다.

사회과학에서 연구자는, 먼저 연구 문제(research question)와 가설(hypothesis)을 가지며, 그런 다음 그것을 검증해줄, 현실을 대표한다고 믿어지는 데이터(data)를 구한다. 데이터란 사람, 집단, 사회현상 따위에 관한 사실(facts) 혹은 정보(information)를 말한다.

빅데이터 시대 이전까지 일반적으로 데이터는 연구자가 연구를 위해 의도적으로 수집한 것이었다. 연구 목적에 부합되도록 조사를 기획하고 실험, (참여) 관찰, 설문조사와 같은 방법을 통해서 데이터를 수집하였다. 사회과학에서 데이터란 그러한 데이터를 의미하였으며, 엄밀하게 계획되고 설계된 절차를 통해서 수집된 데이터만이 학문적으로 인정받을 수 있었다.

Image result for big data social science research

사회과학 연구에 있어 빅데이터가 제기하는 가장 근본적인 문제 중 하나는 데이터에 관한 그러한 전통적인 인식에 대한 것이다. 빅데이터는 데이터가 단순히 양적으로 증가했다는 의미를 넘어서 데이터가 질적으로 달라졌음을 함축한다. 이는 데이터가 무엇인가에 대해 다시 생각해보아야 하고 데이터의 학문적 타당성에 대해서도 다시 살펴보아야 함을 의미한다.

사회과학의 연구 대상은 개인, 집단, 사회조직, 사회제도, 사회적 상호작용, 사회운동, 혁명, 전쟁, 의례와 관행, 가치와 규범, 의식과 태도 따위이다. 과거에도 그랬고, 현재도 그러하며, 미래에도 그러할 것이다. 문제는 데이터가 ~에 대한 것을 넘어서 ~자체가 되었다는 사실이다(Purdam and Elliot, 2015).

예컨대 개인(individual)을 생각해보자. 과거에 개인 데이터(personal data)란 개인의 속성(attributes), 자산, 습관, 취미, 관심, 태도, 행동 등을 알려주는 고정적인 것이거나 상당히 안정적인 것이었다. 그리고 이름, 성별, 나이, 주소, 전화번호, 주민등록번호, 출생지, 직업, 가족관계, 소득, 교육수준, 종교, 국적, 병역 사항, 은행잔고, 부동산 소유 현황, 혈액형, 병력, 지지정당, 노조가입 여부, 지문, 흡연량, 음주량 따위가 개인 데이터였다.

그런데 인터넷, 스마트폰, CCTV, 센서 등 디지털 기술이 확산되면서 개인을 규정하는데 있어 훨씬 동적이며 가변적인 데이터가 추가되었다. 통화기록, 문자메시지 송수신 기록, 로그파일, 쿠키, 전자우편, 블로그, 트위터, 페이스북 같은 소셜 미디어상의 상호작용, CCTV 영상, 자동차 블랙박스 영상, 은행 ATM 사용기록, 인터넷 쇼핑 기록, 인터넷 뱅킹 기록 등 개인의 온라인 행동은 물론이고 오프라인 행동까지 실시간으로 기록되면서 엄청난 양의 데이터가 개인을 규정하는데 활용되고 있다.

Image result for personal data

개인의 일상이 광범위하게 기록되고, 그렇게 수집된 데이터로부터 개인의 생각을 추정하고 행동을 예측할 수 있게 됨에 따라 개인 데이터는 점점 개인 자체와 일치해 가고 있다. 더구나 개인은 자기 스스로가 생각하거나 주장하는 정체성(identity)이 아니라, 신용카드 이용처럼 일상 속에서 자신이 직접 생성하거나 생성에 동의한 데이터, 기계에 의해 모니터링된 데이터, 인터넷, 스마트폰, 자동화기계를 사용하면서 남긴 흔적 등에 의해 추정되거나 결정된 정체성에 의해 규정된다. 나는 더 이상 내 자신이 규정한 ‘나’가 아니라 개인 데이터를 기반으로 사회가 규정해준 ‘나’가 된 것이다. 그런 의미에서 개인은 데이터로 존재하고 살아간다고 말할 수 있다.

사회과학의 연구 대상 중 개인만 그러겠는가. 집단, 사회조직, 국가, 민족과 같은 사회적 행위자는 물론이고, 세계, 시장, 문화, 사회관계, 사회운동, 혁명, 전쟁, 갈등, 협력 등 어떤 사회현상에 있어서도 데이터는 그것에 대한 것이 아니라 그것 자체의 중요한 구성 요소가 되었다. 사회연구는 데이터의 이러한 새로운 성격을 충분히 고려해야 할 것이다.

그렇다면 빅데이터는 기존의 데이터와 어떻게 다를까? Laney (2001)는 빅데이터가 세 가지 차원에서 기존의 데이터와 구별된다고 지적했다. 첫째, 데이터의 양이 과거와 비교할 수 없을 정도로 크고(규모, volume), 둘째, 숫자, 문자, 영상, 동영상, 거래기록 등 데이터의 형식이 매우 다양하며(종류, variety), 셋째, 데이터가 대단히 빠르게 생성된다(속도, velocity). 물론 모든 데이터가 이 세 가지 속성을 모두 갖는 것은 아니다. 예컨대 CCTV 데이터는 실시간이고 대규모이지만 형식은 동영상으로만 되어 있으며, 인터넷 사이트 접속 로그 파일은 실시간이고 대규모이지만 형식은 숫자와 문자만으로 되어 있다.

Laney의 정의가 널리 알려 있기는 하지만 모든 연구자가 그의 정의를 취하지는 않는다. 연구자에 따라 빅데이터의 특정한 성격이 강조되기도 한다. 어떤 학자는 사건이나 상호작용이 발생하면서 바로 기록되는 실시간 데이터(real-time data)라는 점에 주목하고, 어떤 학자는 연구자의 개입 없이 발견되는 데이터(found data)라는 점을, 어떤 학자는 비정형 데이터(unstructured data)가 증가하고 있음에 주목하고, 또 어떤 학자는 데이터가 인간이 아니라 점점 센서(censor)에 의해 생성된다는 사실에 주목한다(Connelly et. al. 2016).

사회과학 연구의 관점에서 보자면, 전통적으로 사용되는 데이터와 최근의 빅데이터는 다음과 같이 대비될 수 있다. 전자가 의도적으로(intentionally) 생성된 반면 후자는 연구를 목적으로 생성되지 않는다. 그래서 어떤 전문가는 전자를 ‘기획된 데이터(designed data)’라고 부르고, 그에 대비해서 후자를 ‘유기적 데이터(organic data)’라고 부른다. 또한 어떤 학자는 전자를 ‘제조된 데이터(made data)’라고 부르고, 그에 대비해서 후자를 ‘발견된 데이터(found data)’라고 부른다.

Image result for big data's effects on social science research

Purdam and Elliot( 2015)은 데이터에 관한 체계적이고 유용한 분류를 제공해 준다. 그들은 데이터가 어떻게 생성되었는가에 따라서 다음과 같이 여덟 가지 유형으로 분류한다.

① 정통의 의도된 데이터(orthodox intentional data): 설문조사, FGI, 실험

② 참여적 의도된 데이터(participative intentional data): crowdsourced data

③ 결과적 데이터(consequential data): 행정기록, 전자의료기록, 상업적 거래 데이터, 온라인 게임 경기 기록

④ 자기 발간 데이터(self-published data): 긴 형식의 블로그 포스팅, 온라인 이력서, 온라인 프로필

⑤ 소셜 미디어 데이터(social media data): 트위터, 페이스북, 온라인 게임 대화

⑥ 데이터 흔적(data traces): 온라인 검색 로그 파일, 온라인 구매 로그 파일

⑦ 발견된 데이터(found data): 공개 공간(public spaces)에 대한 관찰

⑧ 인공 데이터(synthetic data): 시뮬레이션 데이터, 합성 데이터

Mayer-Schoenberger & Cukier(2013: 78)는, 오늘날 점점 인간 뿐 아니라 컴퓨터에 의해 분류되고 분석될 수 있도록 사회적 존재나 현상이 디지털화되고 계량화되는 현상을 데이터화(datafication)라고 불렀다. 책 속의 단어들이 컴퓨터가 읽을 수 있는 데이터가 되고, 사람이나 사물의 위치가 컴퓨터가 처리하는 데이터가 되며, 사람들 사이의 상호작용(예: 트위터, 페이스북)이 컴퓨터로 분석되는 데이터가 된다. 데이터화는 사회과학 연구에 있어 데이터의 유형만큼이나 다양한 데이터 출처가 존재하게 만들고 있다.

Image result for data in star trek

데이터 분석 및 마케팅 전문가인 Lynda Partner(2016)의 지적처럼, 어쩌면 이제 “데이터가 모든 것이고, 모든 것이 데이터”인 세상일 지도 모른다. 학자와 전문가들은 정보시스템, 데이터 시스템, 지식관리시스템, ERP, 가설 검증, 예측, 분류라는 응용적 측면에서 데이터를 바라보지만, 데이터는 이미 인문학적 사유의 대상으로 넘어가고 있는 지도 모른다. 이미 30여 년 전 TV 시리즈인 스타 트렉(Star Trek)은 ‘데이터’라는 출연 인물(?)을 통해서 그러한 가능성을 보여주었고, 20여 년 영화 매트릭스(Matrix)는 모든 것이 데이터로 존재하는 세상인 가상공간을 실감나게 보여주었지 않았던가.  (윤영민, 2018-03-05)

<참고 문헌>

Connelly, Roxanne, Christopher J. Playford, Vernon Gayle, and Chris Dibben. 2016. “The Role of Administrative Data in the Big Data Revolution in Social Science Research”, Social Science Research 59. Pp.1-12.

Laney, D., 2001. “3D Data Management: Controlling Data Volume, Velocity and Variety.” META Group Research Note 6.

Mayer-Schoenberger, Viktor and Kenneth Cukier. 2013. Big Data: A Revolution that will Transform How We Live, Work, and Think. Boston: Houghton Mifflin Harcourt.

Partner, Lynda. 2016. “Data is everthing, and everything is data.” https://blog.pythian.com/data-everything-everything-data/

Purdam, Kingsley & Mark Elliot. 2015. “The Changing Social Science Data Landscape”, Halfpenny, J. Peter & Rob Procter (ed.). Innovations in Digital Research Methods. Chap. 2. London: Sage. Pp.25-58.

사회통계(11): 확률분포

[문제 1] 재벌구조조정에 대한 한 신문사의 여론조사 결과 우리 국민들중 80%는 강도있는 재벌구조조정에 찬성, 그리고 20%는 반대하는 것으로 나타났다고 하자. 만일 임의로 5명이 선택되어졌을 때 3명이 반대할 확률은 얼마인가?(김은정, 2017: 52)(이항분포)

[문제 2] 어떤 응시자가 자동차 운전시험에 합격할 확률은 1/2이라 하고, 매 시험마다 일정하다고 할 때, 다섯 번째 비로소 합격할 확률은 얼마인가? 또, 처음으로 합격하는 횟수의 기대값은?(김은정, 2017: 57)(기하분포)

[문제 3] 주중 아침 15분 동안 자동차를 탄 채로 은행 서비스를 받기 위해 drive-through 창구에 도착하는 자동차 대수에 관심이 있다. 과거의 자료로 볼 때 15분 동안 도착하는 자동차는 평균 10대이고 포아송 분포를 따른다. 그렇다면 15분 동안에 5대가 도착할 확률은 얼마일까?(Anderson, et., al., 2016: 280)

[문제 4] 어떤 사거리에 다음 차가 도착하기까지 걸리는 시간이 평균 12초의 지수확률분포를 따른다.(Anderson, et., al., 2016: 328)

(1) 지수확률분포의 그래프를 그리시오.

(2) 다음 차가 도착하는데 걸리는 시간이 12초 이하일 확률은?

(3) 다음 차가 도착하는데 걸리는 시간이 6초 이하일 확률은?

(4) 다음 차가 도착하는데 걸리는 시간이 30초 이상일 확률은?

[문제 5] 서울 강남 소방서가 시간당 평균 1.6회의 119 전화를 받는다고 하자. 또한 시간 당 전화수가 포아송확률분포를 따른다고 가정하자. 119 호출 사이의 간격이 한 시간 이내일 확률은? (Anderson, et. al., 2016: 329 변형)(지수확률분포)

[문제 6] 국내 대기업의 주식형 펀드에 대한 평균 수익률은 2009-2011 3년간 14.4%였다. 3년간 수익률이 표준편차 4.4%로 정규확률분포를 따른다고 가정하자. 개별 대기업 주식형 펀드의 3년간 수익률이 적어도 20%일 확률은? (Anderson, et., al., 2016: 321)

사회통계의 꽃은 역시 학률분포이다. 통계학자나 계량사회학자는 확률분포를 가지고 세상을 보려고 한다. 그런데 확률분포는 많은 사회과학 전공 학생들에게 넘사벽처럼 인식되기도 한다.

확률분포가 중요한 이유는, 우리가 관심을 갖는 어떤 사회현상의 확률분포를 알면 그 사회현상에 관한 다양한 사건(event)의 확률을 쉽게 예측할 수 있기 때문이다. 확률분포는 사회현상이 지닌 규칙성(regularity)을 효율적으로 표현한다.

앞 포스팅에서 확률분포의 특징을 보여주는 도구로 모멘트(moment, 적률)를 소개했다. 그런데 모멘트나 모멘트를 이용해 구성한 왜도나 첨도는 확률분포의 특징을 요약해주기는 하지만 그것만으로 확률분포를 완전하게 묘사할 수 없다. 확률분포는 다양한 모습을 가질 수 있다(아래 그림을 참조).

확률변수 X의 특정값이나 어떤 범위가 발생할 확률을 예측하려면 확률함수(probability distribution)을 알아야 한다. X의 확률분포는 확률함수 에 의해 정의되며, 확률함수는 확률변수의 값에 확률이 어떻게 부여되는지를 말해준다.

사회통계를 배우는 사람들에게 나쁜 소식은 이론적으로 무한한 수의 확률분포(확률함수)가 존재할 수 있다는 사실이며, 좋은 소식은 사회현상을 연구하는데 있어 20개 미만의 확률분포만 알고 있으면 된다는 사실이다.(확률분포의 종류를 보려면 여기를 클릭) 그 확률분포들은 자유도 같은 하이퍼 퍼라미터(hyper-parameter)에 의해 규정되는 많은 변종들을 가지고 있기 때문에 우리가 관심 갖는 대부분의 사회현상을 표현할 수 있다. 다음은 상대적으로 많이 사용되는 확률분포들이다.참고) Student’s t, Chi-squared, Beta, Gamma 분포의 확률함수에 보이는 는 계승(factorial)이 실수까지 적용될 수 있도록 일반화한 것으로 이해하면 되고, F 분포의 분모에 보이는 (베타함수)는 이항계수를 일반화한 것이라고 생각하면 된다.

확률분포를 생성하는 학률함수를 보고 겁먹을 필요는 없다. 수백년에 걸친 통계학자들의 노고 덕분에 확률분포를 수식으로 표현할 수 있게 된 점을 감사히 생각하고 잘 사용하면 된다. 각 분포들이 주로 사용되는 현상들이 무엇인지를 잘 판별하면(인터넷을 뒤져보면 금방 알 수 있음) 적절히 사용할 수 있을 것이다.

이중 정규분포가 가장 널리 적용되며, 통계적 추론에는 카이자승분포, t분포, F분포가 자주 사용되고, 베이즈 추론에는 베타와 감마 분포도 자주 사용된다. 이항분포, 포아송 분포, 지수 분포도 잘 기억해 두면 확률 추정에 유용하게 사용될 수 있을 것이다.

이항분포는 성공(이나 실패) 확률을 추정하는데 사용된다. 포아송 분포는 어떤 사건이나 현상의 단위 시간당 발생 횟수에 자주 적용되며, 지수확률분포는 어떤 사건의 발생 간격 혹은 어떤 사건을 완료하는데 걸리는 시간에 관한 확률을 계산하는데 적용되곤 한다. 단위 시간당 발생 횟수인 경우 포아송 분포, 그것을 발생의 시간 간격으로 바꾸면 지수확률분포가 적용되므로 두 분포는 서로 관련된다.

위의 문제들을 풀어보면 확률분포와 확률함수를 이해하는데 도움이 될 것이다. MS Excel에서 위에 제시된 대부분의 확률함수들이 주는 확률값을 계산할 수 있다. 미국 아이오아 대 통계학과의 Matthew Bognar 박사가 개발하여 제공하는 휴대폰 앱인 Probability Distributions (혹은 그의 웹사이트에서도 이용 가능함)을 이용하여 계산할 수 있다. 이 앱은 확률분포 그래프를 직접 보면서 확률값을 계산할 수 있다는 장점이을 가지고 있다.

<문제 풀이>

[문제 1]

[문제 2] ,

[문제 3]  . 대신 를 사용하기도 한다. 참고로 포아송 분포에서는 이지만, 지수분포에서는 이다.

(Probability Distributions app. 이용)

[문제 4] (1)

(2) 0.63065  (3) 0.39226 (4) 0.08291 (Probability Distributions app. 이용)

[문제 5] 전화가 걸려오는 평균 시간 간격은 60/1.6=37.5분,  (Probability Distributions app. 이용)

[문제 6]  (Probability Distributions app. 이용)

<참고 문헌>

Anderson, David R, Dennis J., Sweeney, Rhomas A. Williams (류귀열, 김창규, 최승은, 김민중, 이성철 역). 2016. <앤더슨의 통계학>. 한올.

김은정. 2017. <사회조사분석사 사회통계>. 학진북스.

(윤영민, 2017/09/11)

사회통계(10): 교차표 분석의 기초

[문제 1] 미국 동부 주요 대도시에 근무하는 경찰관 남녀의 승진 사례이다. 경찰관 1,200명 중 960명은 남자, 240명은 여자이다. 지난 2년 동안 324명이 승진하였다. 다음 표에 과거 2년간 경찰관의 승진 현황이 제시되어 있다. 승진 결과를 검토한 다음, 여경위원회는 240명의 여경 중 36명만이 승진하였다는 사실을 근거로 여성차별이 있다고 문제를 제기했다. 경찰인사관리위원회는 여성이 상대적으로 적게 승진한 것은 여성차별 때문이 아니라 여성 수가 상대적으로 적기 때문이라고 주장했다. 과연 누구의 주장이 옳을까? 통계학은 이 첨예한 갈등을 합리적으로 해결하는 데 기여할 수 있을까?

이 교차표를 접근하는데는 두 가지 방법이 있다. 이 교차표가 모집단의 수치를 보여주는 경우 조건부 확률(conditional probability)을 사용하면 되고, 이 교차표가 하나의 표본에 관한 정보로 간주된다면 카이자승() 을 가지고 가설 검증을 하면 된다.

어느 데이터가 모집단(population)에 관한 것인가 혹은 표본(sample)에 관한 것인가는 근본적으로 연구자가 어떤 대상에 대해 주장을 제시하고 싶은가에 달려 있다. 예컨대 이 사례에서 연구자가 해당 경찰청의 과거 2년 동안에 발생한 승진 케이스들에 대해서만 성차별이 존재하는지를 따지겠다면, 이 데이터는 전수 데이터로 모집단에 관한 것이라고 간주될 수 있다. 반면에 연구자가 해당 경찰청의 데이터를 가지고 미국의 전체 경찰이나 미국 사회 전체에 존재하는 성차별에 관해 따지겠다면 이 데이터는 표본에 관한 것이라고 간주되어야 한다.

이 교차표를 가지고 그 두 접근을 모두 검토해 보자. 먼저 조건부 확률부터 논의하겠다.

최근 조건부 확률은 그 어느 때보다도 중요한 지식이 되었다. 현업에서 가설 검증보다는 예측이 훨씬 더 많이 요청되고 있으며, 예측에 널리 사용되는 베이즈 추론(Bayesian inference)의 논리적 토대가 조건부 확률이다. 현업에서 스스로 예측을 하거나, 최소한 남이 하는 예측을 이해하고 싶다면, 조건부 확률에 관련된 개념들을 꼼꼼하게 익혀둘 필요가 있다.

확률을 다룰 때는 먼저 사건을 정의해야 한다.

M = 경찰관이 남성; W = 경찰관이 여성; A = 경찰관이 승진;  =  경찰관이 승진하지 못함

= 무작위로 뽑힌 경찰관이 남성이고 승진;  = 무작위로 뽑힌 경찰관이 남성이고 승진하지 못함; = 무작위로 뽑힌 경찰관이 여성이고 승진; = 무작위로 뽑힌 경찰관이 여성이고 승진하지 못함

위의 표는 아래 확률들을 가지고 승진에 관한 결합확률표(joint probability table)로 전환될 수 있다. 

이러한 확률들은 두 사건의 곱사건의 확률로서 결합확률(joint probability)라고 부른다.

결합확률 주변에 있는 값들은 각 사건의 확률이다. 즉, P(M) = 0.80; P(A) = 0.20; P(A) = 0.27; P() = 0.73이다. 이러한 값들을 주변확률(marginal probability)이라고 부른다. 결합확률표에서 관련된 행이나 열의 결합확률을 합하면 주변확률을 구할 수 있다. 예컨대 이다. 이점을 잘 기억해두면 베이즈 추론에 도움이 될 것이다.

결합확률과 주변확률을 가지면 조건부 확률(conditional probability)을 구할 수 있다.  예컨대 어떤 경찰관이 남성일 경우 그가 승진할 확률, 을 구해보자.

도수를 사용해서 구하면, 288/960=0.3이 될 것이다. 확률을 이용해서 구해도 0.24/0.80=0.3으로 동일한 값이다. 확률을 이용한 조건부 확률의 계산을 일반화하면 다음과 같다.

결합확률을 주변확률로 나눈 값이다. 다른 말로 주변확률에 대한 결합확률의 비율이다.

경찰관이 여성인 경우 승진할 확률은,

이다.

즉, 남성경찰관의 승진확률은 0.3으로 여성경찰관의 승진확률 0.15의 두 배이다. 이 결과는 경찰인사관리위원회보다 여경위원회의 주장을 지지한다.

만약 이 데이터가 표본이라면 조금 다른 방식으로 접근할 수 있다. 교차표에 나타난 차이가 우연적 결과이다 혹은 승진에 관해서 성차별이 없다(통계학적으로 표현하면, 경찰관의 성별과 승진이 독립 사건이다) 라는 가설을 검증하는 방법이다. 이를 영가설(null hypothesis)이라고 하는데, 만약 영가설이 기각되면 대립가설(alternative hypothesis)을 수용하게 된다. 이는 바로 가설 검증(hypothesis testing)이다.

만약 경찰관의 성별과 승진이 독립 사건이라면 결합확률표는 어떤 모습일까? 남자 경찰관 중 승진자 비율, 여성 경찰관 중 승진자 비율, 그리고 전체 경찰관 중의 승진자 비율이 같을 것이다(아래 결합확률표 참조).

이를 일반화하여 표현하면 다음과 같다.

이를 도수의 교차표로 나타내려면 각 결합확률이나 주변확률에 총사례수인 1200을 곱하면 된다.

이는 영가설 아래서 얻은 예측값이다. 이 예측값과 실제 관찰값의 차이가 영가설을 기각할 수 있을 만큼 충분히 큰가? 이것을 검증하는 기법이 카이자승 검증( test)이다.

각 셀의 카이자승 값은 그 셀의 관찰값에서 예측값(영가설 아래)을 뺀 값을 제곱한 수를 그 셀의 예측값으로 나누면 된다. 각 셀의 카이자승 값들을 모두 합한 수가 전체 카이자승 값이다.  카이자승 분포()은 아래 그림에서처럼 자유도에 따라 모양이 변한다. (아래 그림은 위키피디아에서 가져왔음.)

Chi-square pdf.svg

교차표에서 자유도를 구하는 공식은 다음과 같다.

위의 사례에서는 자유도는, (2 – 1)(2 – 1)=1이다.

엑셀에서는 바로 카이자승 값을 구할 수 없다. 위 공식들을 이용해서 구해야 한다. 다만 예측값의 교차표를 구하면, CHISQ.TEST 함수를 이용해서 바로 카이자승 값의 p- 값을 구할 수 있다. 아래는 그 두 가지 방법을 모두 이용해 구한 값들이다.

이 교차표의 카이자승 값의 p-값은 영가설을 충분히 기각할 수 있을 정도로 작다. 위에서 조건부 확률을 가지고 얻은 결과를 카이자승 검정을 통해서 다시 확인한 셈이다.

도수의 교차표(cross-table)든, 결합확률표이든 범주형 변수를 분석하는데 대단히 유용한 도구이다. 사회과학에는 범주형 변수들이 많다. 이 기법들을 잘 익혀두면 유용하게 사용할 수 있을 것이다. (윤영민, 2017-08-25)

사회통계(9): 변이를 보여주면 금상첨화

[문제] US Census Bureau가 1996년 조사한 자료(32,561 명)가 아래 링크되어 있다. 미국 UCI의 machine learning 데이터베이스에서 가져왔다. 이 데이터의 첫 열은 응답자의 나이(age)이다. 응답자의 나이에 대한 다음 통계값을 구하라. (어떤 통계 소프트웨어를 사용해도 무방하나 가급적 MS Excel을 사용하기 바람.)

평균, 중앙값, IQR, 분산, 표준편차, 박스 플롯, 첨도, 왜도

데이터: Adult.data 

평균, 중앙값(median) 혹은 최빈값(mode) 같은 중앙집중 경향(central tendency)은 데이터 분석의 출발점으로 충분하다. 그러나 만약 관측값들이 중앙집중 경향을 중심으로 어떻게 변화하는지[즉, 변이(variability)]를 보여줄 수 있으면 금상첨화일 것이다.

데이터 분석에서 변이를 나타내는 도구로는 IQR, 분산, 표준편차, 박스 플롯(box plot), 첨도와 왜도가 자주 사용된다. 기초적인 도구들이지만 잘 사용하면 데이터에 관해 상당한 정도의 스토리를 추가할 수 있다.

(1) IQR(Interquartile Range, 사분위수 범위)는 3사분위수와 1사분위수의 차이()이다. 사분위수란 데이터를 정확히 4등분해주는 수들을 말한다. 3사분위수가 상위 25%, 1사분위수가 하위 25%를 구분해주는 수이니, IQR은 데이터의 중앙 50%의 범위이다. IQR은 극단값들의 영향을 줄이기 위한 변이 척도이다.  IQR은 의외로 활용도가 높다. 기억해둘만한 충분한 가치가 있다.

(2) 분산(variance)은 편차 제곱의 평균이다. 편차란 관측값과 평균의 차이를 말한다. 분산은 모든 관측값을 빠짐없이 투입해서 계산되는 변이 척도이다.

모집단 분산의 공식은 이고, 표본 분산의 공식은 이다.

(3) 표준편차(standard deviation)는 분산의 양의 제곱근이다. 모집단의 표준편차 계산공식은  이고, 표본표준편차의 계산식은 이다. 표준편차는 데이터를 표준화하는데 사용된다. 예컨대 z-값(z-score)은 편차를 표준편차로 나눈 값으로 모든 데이터의 상대적 위치를 표준편차의 배수로 나타내고, 두 변수 x와 y의 공분산(covariance)을 x의 표분편차와 y의 표준편차의 곱으로 나누어 표준화하면, 측정 단위로부터 자유로운 상관계수(correlation coefficient)를 얻는다.

(4) 박스 플롯(box plot)은  중앙값, 3사분위수(), 1사분위수(), 내의 최소값, 내의 최대값, 이렇게 다섯 개의 숫자로 표시한다(아래 그림 참조).

박스 플롯은 이상치(outliers)를 발견하는 용도로 자주 사용된다. 박스 플롯의 상한선과 하한선을 벗어난 데이터는 이상치로 간주된다.

(5) 왜도(skewness)와 첨도(kurtosis)는 분포의 비대칭도를 나타낸다. 왜도는 분포가 어느 쪽으로 얼마나 기울져 있는지를 보여주고, 첨도는 분포가 얼마나 중심에 집중되어 있는지를 보여준다.

왜도와 첨도는 모멘트(moment, 적률)라는 모수를 이용하여 구한다. 모멘트는 분포의 모양을 보여주는 모수(parameter)이다. 통계학으로 세상을 이해하는데 있어 가장 중요한 정보는 확률변수의 분포(distribution)이다. 통계적으로 세상에 대해 설명하거나 예측하려면 확률변수가 어떻게 움직이는가를 파악해야 한다. 확률변수의 움직임은 분포로 나타낸다.

어떤 확률변수의, 분포의 중심이 어디에 있는지, 분포가 얼마나 퍼져 있는지, 분포가 어느 쪽으로 치우져 있는지, 분포가 중심에 얼마나 몰려있는지를 알면 우리는 그 확률변수에 대해 상당히 파악한 셈이다. 모멘트는 그러한 분포의 모습을 알려주는 모수이다.

확률변수 X의 1차 모멘트는 기대값 , 곧, 평균 ()으로, 분포의 중심을 보여준다. 2차 모멘트부터는 중심 모멘트(central moment, 중심 적률)라고 부른다. 확률변수 X의 2차 중심 모멘트(혹은 X의 평균에 대한 2차 모멘트라고도 함)는 분산 으로 분포의 변이(흩어짐의 정도)를 보여준다.

X의 3차 중심 모멘트는, 아래와 같이 분포가 어느 쪽으로 기울어져 있는지, 즉, 왜도를 정의하는데 사용되고, X의 4차 중심 모멘트는 분포가 중심에 얼마나 몰려있는지, 즉, 첨도를 정의하는데 사용된다.

(는 3차 중심 모멘트; 는 표준편차의 3승)

(는 4차 중심 모멘트; 는 표준편차의 4승)

왜도와 첨도의 값은 다음과 같이 해석된다. 왜도가 0이면 자료의 분포가 정규분포처럼 좌우 대칭이고, 양수이면 오른쪽 꼬리를 가진 분포이며, 음수이면 왼쪽 꼬리를 가진 분포이다. 첨도가 3이면 정규분포와 봉우리 높이가 같고, 3보다 크면 정규분포보다 높은 봉우리를 가지며, 3보다 작으면 정규분포보다 낮은 봉우리를 가진다.

엑셀의 추가기능인 KESS를 사용해서 [문제]를 풀어 다음과 같은 결과를 얻었다.

나이 평균(38.58)이 중앙값(37)보다 크고 왜도가 양수이니 그림에서처럼 분포가 오른쪽에 꼬리를 가지고 있음을 알 수 있다. 이는 상한선(3분위수+1.5*IQR)을 벗어나는 나이를 가진 응답자 여러 명이 표시된 박스플롯의 그림과도 일치한다.

나이의 평균에 변이 정보들이 추가되니 표본의 분포에 대해 좀 더 알 수가 있다. 여기서 소개된 변이 척도들을 잘 기억해두면 쓸모가 있을 것이다. (윤영민, 2017-08-25)

사회통계(8): 평균을 알면 통계학이 보인다

[문제 1] 당신이 투자를 했는데, 첫 해는 10%를 벌었고, 둘째 해에는 50%, 셋째 해에는 30%를 벌었다. 그 경우 3년간 당신의 평균 수익률은 얼마인가?

[문제 2] 당신이 경기도 이천에서 차를 몰고 서울 강남을 다녀왔다. 갈 때는 고속도로가 막혀서 평균 속도 70km/h로 갔고 올 때는 막힘이 없어 평균속도 100km/h로 돌아왔다. 그렇다면 당신은 서울을 평균속도 얼마로 다녀왔는가?

[문제 3] 모 대학의 입시에서 논술 채점을 하는데, 한 학생의 답안지를 다섯 명의 교수가 채점한다. 만약 그 점수가, 80, 90, 100, 60, 85였다면 그 학생의 논술 점수는 얼마일까?

평균을 모르는 사람은 없다. 초등학생 저학년 때 산술평균을 배우기 시작해서 고등학생 때까지 가중 평균, 기하평균, 조화평균 따위를 배운다.

그렇다고 사람들이 평균을 제대로 사용하는 것은 아니다. 금융처럼 특수한 영역을 제외하고 일반인들이 산술평균이 아닌 다른 종류의 평균을 사용하는 경우는 거의 없을 뿐 아니라 산술평균이 적합하지 않는 경우에도 그냥 산술평균을 쓰곤 한다.

산술평균은 약점을 많이 가지고 있다. 그래서 통계학에서는 여러 종류의 평균이 사용된다. 평균의 약점을 잘 인식하고 용도에 맞게 적절한 종류를 선택해 사용할 수 있다면 잘못된 숫자로 현실을 왜곡하는 실수를 크게 줄일 수 있을 것이다.

필자가 알고 있는 평균(mean or average)을 곰곰히 생각해보니 다음 7가지이다: 산술평균(arithmetic mean), 절사평균(trimmed mean), 가중평균(weighted mean), 기하평균(geometric mean), 조화평균(harmonic mean), 평방평균(quadratic mean), 이동평균(moving average)

(1) 여러 수의 덧셈이 사용되는 척도나 계산에는 산술평균(arithmetic mean)이 사용된다. 데이터 분석에서는, 아래 공식처럼 관측값을 모두 더 한 다음 관측값의 갯수로 나누면 산술평균을 얻는다.

(2) 그런데 만약 이상치(outliers)가 존재한다면 산술평균은 현실을 왜곡하게 된다. 그 경우 하나의 간단한 해결책은 이상치를 제외하고 나머지 관측값들로만 산술평균을 구하는 것이다. 그것이 위 [문제 3]에서 사용되는 절사평균(trimmed mean)이다. 논술 채점의 경우 가장 후하게 준 점수인 100점과 가장 인색하게 준 60점을 제외하고, 80점, 90점, 85점만 가지고 평균을 낸 85점이 해당 학생의 논술 점수가 된다. 대학 당국은 그렇게 매겨진 점수가 학생의 논술 능력을 잘 반영한다고 믿는다.

(3) 대학생이라면 누구나 가중평균(weighted mean)에 익숙할 것이다. 성적에 민감한 대학생들은 자신들이 받는 평점(G.P.A.)이 어떻게 계산되는 줄 잘 안다. 만약 어떤 학생이 한 학기 동안 3학점 2과목에서 각각 C(2점)와 B(3점)를 받았고, 2학점 2과목을 모두 A(4점), 1학점 2과목도 모두 A(4점)을 받았다면 학기를 망쳤다고 투덜댈 것이다. 학점이 낮은 과목들은 모두 A를 받았지만  높은 학점 2과목에서 낮은 점수를 받았기 때문이다. 평점은 이다. 학점 평균(평점)에서는 각 과목의 학점이 가중치(weight)이다. 과목의 학점을 고려하지 않고 취득 점수의 산술평균을 내면 (2+3+4+4+4+4)/6=3.5이다. 아마도 이 산술평균은 여러 과목에서 A를 받은 이 학생의 기분을 반영할 지는 몰라도 학생의 성취도를 정확히 반영한다고 볼 수는 없을 것이다. 기분은 3.5이고 현실은 3.25이다. 관측값의 비중이 다를 때는 그 비중을 가중치로 반영하는 가중평균을 사용해야 한다. 단순한 산술평균은 현실을 왜곡한다.

(4) 우리가 일상에서 사용하는 척도가 덧셈으로만 이루어져 있지는 않다. 어떤 척도는 곱셈이 사용된다. 이자율, 인구성장률, 경제성장률, 수익률 같은 중요한 지표들이 곱셈을 사용한다. 그 경우에는 기하평균(geometric mean)이 적합하다.

예컨대 위 [문제 1]를 기하평균으로 풀어보자.

3년 동안의 평균수익률은 0.29이다. 만약 산술평균으로 계산했다면 평균수익률은 (1.1+1.5+1.3)/3-1=0.3이 된다. 평균수익률이 실제보다 과대 평가된다.

산술평균은 덧셈용이다. 금융이나 경제에서는 곱셈을 사용하는 지표가 많기 때문에 기하평균이 사랑받는다. (참고: 기하평균은 제곱근을 사용하기 때문에 무리수 값이 나오는 경우가 많다. 과거에 무리수는 수로 인정받지 못하고 도형적인 의미만을 지녔다. 그래서 이름이 기하평균이 되었다.)

(5) 물리량에서도 산술평균은 맥을 못춘다. 속도가 대표적인 경우이다. 속도는 주행한 거리를 소요 시간으로 나누어 도출한다. [문제 2]에서 만약 (70+100)/2=85(km/h)라는 단순 산술평균으로 평균속도를 계산하면 거리와 시간을 무시한 것이 된다. 이천에서 서울 강남까지 왕복했으니 주행거리가 140km(70km*2)였고, 소요 시간은 1.7시간(1+0.7)였다. 140km를 1.7시간으로 나누면 평균속도는 82.35km/h이다.

이런 경우에는 아래 공식의 조화평균(harmonic mean)을 가지고 구할 수 있다.

조화평균을 사용하면 주행거리와 소요 시간을 몰라도 전체 평균속도를 구할 수 있다. 산술평균으로 구한 평균속도보다 다소 느리다.

조화평균은 동일한 금액을 배정하여 여러 가지 상품을 구입할 때 평균 상품 수량을 구하는데도 쓸 수 있다. 예컨대 같은 예산을 배정하여 사과 100개와 배 50개를 구입한다면 구입한 과일은 평균 몇 개인가? 약 67개이다.

( ). 산술평균으로 계산하면 (100+50)/2=75이다. 75개는 예산과 상품가격을 무시해서 나온 잘못된 결과이다.

조화평균은 동일한 거리 혹은 동일한 금액이라는 조건에서 비중(속도나 가격)이 다른 여러 가지 요소를 결합하는 경우에 있어 평균을 도출하는데 사용된다. 만약 동일한 거리 혹은 동일한 금액이라는 조건이 충족되지 않으면 위의 공식을 바로 사용할 수 없다. 가중치를 주어야 하기 때문이다. (예를 들어, 전남 장성에서 기차로 서울(용산)을 가는데, 100km 떨어진 익산까지는 ITX/새마을(시속 120km)로 가고, 익산에서 서울까지 250km는 KTX(시속 250km)로 갔다면, 장성에서 서울까지 간 평균속도는 얼마인가와 같은 문제에는 조화평균 공식을 바로 적용할 수 없다. 거리 100km와 250km가 가중치로 고려되어야 한다.)

(6) 통계학에서는 평균을 무척 많이 사용한다. 평균 자체도 대표값으로서 중요한 정보이지만, 평균으로부터 도출된 분산(variance)도 변이(variability)를 보여주는 유용한 도구이다.  분산은 각 관측값이 산술평균으로부터 떨어진 거리인 편차(difference)를 제곱한 값들의 평균이다. 다시 말해 분산은 편차의 평방평균(quadratic mean)이다. 편차의 평균은 0이기 때문에 편차를 제곱해서 사용한다. 분산의 양의 제곱근이 표준편차(standard deviation)이다.  분산(모집단 분산)을 계산하는 공식은 아래와 같다.

(는 모집단의 평균)

(7) 현실에서 기하평균과 조화평균은 그다지 자주 사용되지 않는다. 아마도 그것들보다 훨씬 자주 사용되는 또 다른 종류의 평균은 이동평균(moving average)이라는 도구일 것이다. 금융권 종사자나 어느 분야에 있던 시계열 데이터를 다루는 사람이라면 이동평균에 익숙하리라.

아래 그림에는 Amazon.com의 주가 변동이 제시되어 있다. 이미 이 그래프도 혼란스럽지만 만약 주가 변동이 주 단위나 일 단위로 표시된다면 더욱 혼란스러울 것이다. 그렇게 혼란한 그래프 대신 보다 매끄러운 그래프로 주가변동의 추세(아마도 그것이 당신이 원하는 것일 게다.)를 보여주는 도구 중 하나가 이동평균이다.

Image result for stock price

이동평균은 아래와 같은 공식으로 구해진다.

 (T는 부분집합의 크기, 는 관측값)

공식이 복잡해 보이지만 사실은 간단한 계산이다. 주가에 관한 이동평균을 논의한다고 치자. T는 2일, 5일, 10일 등 평균을 내고 싶은 단위 기간이다. 선택한 단위 기간에 따라 2일 이동평균, 5일 이동평균, 10일 이동 평균 등을 계산할 수 있다.

예컨대 10일 동안의 특정 주식의 주가(일일 종가)가 아래와 같다고 하자.

2일 이동평균을 계산하면 다음과 같이 9개 값이 나온다.

(1000+1050)=1025, (1050+1100)=1075, (1100+1200)=1150, (1200+1150)=1175, (1150+1200)=1175, (1200+1250)=1225, (1250+1100)=1175, (1100+1200)=1150, (1200+1250)=1225

7/15 것은 이동평균이 없고, 7/16 것은 7/15와 7/16 것을 평균하여 1025, 7/17 것은 7/15 것을 빼고, 7/17 것을 넣어 평균하여 1075, 7/18 것은 7/16 것을 빼고 7/17과 7/18 것을 평균하여 1150….이런 식으로 계산하면 된다. 새 날짜의 관측값이 추가되면, 오래 된 날짜의 관측값이 빼는 방식으로 고정된 주기로 계속 평균을 계산해 간다.

이러한 이동평균을 사용하면 주가변동을 훨씬 매끄러운 모습의 추세선으로 표시할 수 있다. 아래는 MS 엑셀의 데이터분석 기능을 이용해서 위 사례의 이동평균을 구하고 그래프로 나타냈다.

이 사례에는 단순이동평균(Simple Moving Average, SMA)를 적용하였는데, 지수이동평균(Exponential Moving Average, EPA)와 같은 다른 변종도 있다. 여기서는 EPA에 대해서만 약간 설명하겠다. 다양한 이동평균에 관심있는 독자는 따로 학습하기 바란다.

실제로 SMA와 EPA는 큰 차이가 나지가 않는 경우가 많다. 다만 EPA는 단기 변동성을 포착하기 위해 최근 값들에 대해 가중치를 주고자 한다. EMA를 구하는 식은 아래와 같다.

여기서 P는 가격(Price), T는 기간(time period)이다. 이 공식을 풀어서 말하자면, 금일 EMA는, 금일 가격(today’s price)에 가중치를 곱한 값과, 전일 EMA에 (1-가중치)를 곱한 값의 합이다. 가중치는 이다. T가 분모에 들어 있으니 기간이 커질수록 가중치가 작아진다. 이는 기간이 클 경우 SMA와 EMA가 별로 차이가 없음을 함축한다. EMA를 계산하려면 최초의 EMA()로 시작해야 하는데, 통상 그것은 기간  T의 SMA이다.

위의 사례를 가지고 2일 지수이동평균을 구해보면 아래와 같다.

7월 16일: 1025(이동평균과 동일); 7월 17일: 1075(=1100*0.666667+1025*(1-0.666667)); 7월 18일: 1158.333(1200*0.666667+1075*(1-0.666667)); 7월 19일: 1152.778(=1150*0.666667+1158.333*(1-0.666667))….나머지는 아래 표의 D열을 참조.

빅데이터 시대에는 여러가지 종류의 평균이 쓸모가 많다. 설문조사와 같은 횡단적(cross-sectional) 데이터를 주로 사용하는 사회학 연구에서 이동평균은 아주 드물게 사용되었다. 그러나 요즘은 사회현상에 대한 종단적(longitudinal) 데이터가 흔해졌다. 사회학 연구에도 이동평균과 같은 도구를 쓸 일이 많아졌음을 의미한다. 하물며 현업에서 종단적 데이터를 다루는 도구의 필요성이 높아졌음은 말할 나위도 없으리라. (윤영민, 2017-08-24)

사회통계(7): 통계학 교육의 전복이 요구된다

대학에서 사회통계 혹은 통계학을 가르치는 가장 중요한 이유는 학생들에게 데이터를 전문적으로 분석할 수 있는 능력을 갖추어 주기 위해서이다. 그것은 과거에도 그랬고, 현재도 그러하며, 미래에도 그럴 것이다. 그런 관점에서 보면 사회통계 교육에 빨강 불이 켜졌다. 통계학 교육이 전복되어야 한다는 과격한 표현이 어울릴 정도로 극적인 변화가 필요하다는 말이다.

지금까지 사회통계학이나 통계학 교육의 중점은 모수 추정과 가설 검증에 있었다. 작은 규모의 표본조사를 통해 데이터를 수집하고 그것으로 모집단의 모수를 추정하거나 가설을 검증하는 방식이었다. 따라서 기술통계(descriptive statistics)는 고급의 통계 기법을 배우기 위한 예비 지식 혹은 보조 수단 정도로 취급했다. 그런 방식으로는 모수 추정이나 가설 검증이 불가능하다고 여겼기 때문이다. 학생들은 물론이고 교수자도 기술통계를 진지하게 다루지 않았다.

그런데 시대가 바뀌었다! 정확히 말하자면, 데이터 환경이 바뀌고 분석 도구가 바뀌었다. 대량의 데이터가 이용가능하고 엄청난 컴퓨터 자원에 손쉽게 접근할 수 있게 되었다. 한 마디로 ‘빅데이터’ 시대가 도래했다!

게다가 현실에서는 모수 추정이나 가설 검증이 아니라 예측이 대세가 되고 있다. 집단 수준의 예측 뿐 아니라 개인 수준의 예측까지 일반적이 되고 있다.

이런 상황에서 종래의 모수 추정이나 가설 검증 기법들은 불필요하거나 적합성을 잃고 있다. 표집 데이터가 아니라 전수 데이터가 이용 가능한 경우가 크게 늘었고, 그런 경우에는 모수 추정이나 가설 검증이 불필요하다. 또한 현재의 통계 분석 도구들은 대부분 표본의 크기가 2천이나 3천 정도임을 가정하고 개발되었다. 예컨대 널리 사용되는 카이자승이나 p-값이 그러하다. 그런 도구들은 사례수가 크게 많아지면 검정력을 상실한다.

따라서 통계학 혹은 통계학 교육의 무게 중심은 기술통계로 이동되어야 한다. 그것이야말로 학생들이 사회에 나가면 널리 사용할 도구들이기 때문이다. 기술통계에 대한 교육의 강화 뿐만이 아니다. 보다 더 큰 관점에서 볼 때 사회통계 교육에 다음과 같은 변화가 필요하다고 판단된다.

  1. 데이터(data)에 대한 개념적 인식 전환이 요구된다.
  2. 기술통계(descriptive statistics)에 대한 교육이 크게 강화되어야 한다.
  3. 시각화(visualization) 교육이 크게 강화되어야 한다.
  4. 확률이론(probability theory)과 확률분포(probability distribution)에 대한 교육이 크게 강화, 확대되어야 한다.
  5. 베이즈 추론(Bayesian inference)에 대한 교육이 확대 혹은 추가되어야 한다.
  6. 상관성 척도(measurement of relations)들에 대한 교육이 크게 확대되어야 한다.
  7. 회귀분석의 적합(fitting regression models) 방법을 다양화해야 한다.
  8. 데이터 마이닝(data mining)과 예측 분석(predictive analytics)이 추가되어야 한다.

데이터에 대한 개념적 인식 전환에 관해서는 앞선 포스팅에서 이미 논의했으니, 여기서는 기술통계에 대한 교육을 강화해야 한다는 점에 대해 집중적으로 논의해 보자.

변하는 사회현상(변수라고 하자)은 무엇이나 분포(distribution)를 가진다. 통계학은 그 분포를 정확하고 간명하게 묘사할 수 있게 해준다. 평균, 중앙값, 최빈값과 같은 대표값은 변수의 분포의 중심이 어디에 있는 지를 보여주고[그 때문에 중앙 집중 경향(central tendency)이라고도 불린다], 범위, 표준편차, 분산, IQR(사분위 범위) 같은 산포도는 변수가 중앙 집중 경향을 중심으로 얼마나 퍼져 있는지를 보여주며, 왜도(skewness)나 첨도(kurtosis) 같은 비대칭도는 변수의 분포가 어느 쪽으로 치우쳐 있는지 혹은 얼마나 중심에 집중되어 있는지를 보여준다.

Image result for moving averages

이 중 가장 중요한 척도는 평균이다. 평균은 범주형 변수에는 사용될 수 없지만 가장 널리 사용되는 척도이다. 그리고 평균은 데이터의 성격과 용도에 따라서 산술평균, 가중평균, 절삭 평균, 기하평균, 조화평균, 평방평균, 이동평균 등 다양한 종류가 사용된다.

그리고 평균은 거의 모든 고급 통계 기법들의 출발점이다. 분산분석, 상관분석, 회귀분석 등은 평균으로부터의 거리, 즉, 편차를 가지고 하는 게임이라고 해도 과언이 아니다. 평균에 대해서만도 적어도 한 주 정도의 수업이 필요하리라 생각된다. (참고로 평균에 관해 예리한 지식을 갖고 있으면 동료들에게 깊은 인상을 줄 수 있을 것이다.)

그러나 기술통계가 위와 같은 한 변수의 분포에 그치는 것은 아니다. 우리가 관심을 갖는 사회현상이 하나의 변수가 아니라 두 변수 혹은 여러 개 변수 사이의 관계일 때도 많다. 승진에 있어서의 성차별, 교육 수준에 따른 소득분포, 특정 지역 출신에 대한 차별, 부모의 사회계층과 자식의 사회계층, 학습 시간과 성적, 연령에 따른 투표성향  등 사실 사회과학의 관심 대상은 변수 사이의 관계인 경우가 많다.

따라서 기술통계에는 변수간의 관계를 보여주는 도구들도 포함되어야 한다. 공분산, 상관계수, 교차표, 결합확률, 조건부 확률, 승산(odds)과 승산비(odds ratio) 등이 그런 기술통계 도구들이다.

Image result for odds

별도로 포스팅 하기 위해 현재의 논의에서는 제외했지만, 시각화(visualization)는 기본적으로 기술통계에 속한다. 기술통계량과 시각화를 합친 기술통계에 대한 강의만으로도 한 학기 수업을 할애해야 할 것으로 생각된다.

그것은 충분히 가치 있는 교육이 될 것이다. 기술통계 도구들을 제대로 활용할 수 있어야 한다는 시대적 요청에도 맞고, 상위 과목이 되는 고급통계, 데이터 마이닝, 예측분석의 효과적인 교육을 위해서 탄탄한 기초를 필요하다는 측면에서도 그렇다.

더 이상 기술통계를 저급한 지식으로 취급하거나 고급 통계를 위한 기초나 보조 수단으로만 인식되어서는 안 될 것이다. 어쩌면 대부분의 업무에서 기술통계는 추리통계보다 훨씬 중요한 통계 지식이 될 것이다.  (윤영민, 2017-08-22)

사회통계(5): 변수, 분석단위, 그리고 측정

[문제 1]  직업, 성별, 종교, 댓글(수), 좋아요(수), 회원탈퇴 고객(수), 투자액 등의 공통점은 무엇일까?

[문제 2] 데이터 수집 단위(unit of data collection)와 분석 단위(unit of an alysis)는 어떻게 다른가?

[문제 3] 남녀간의 사랑은 측정될 수 있을까?

[문제 1]에 대한 답은 변수(variable)이다. 우리가 주목하는 현상 혹은 사건을 변수라고 한다. 그 현상이나 사건이 변하기 때문이다. 변하지 않는 현상(상수, constant)는 우리의 관심 대상이 아니다. 우리는 현상이나 사건이 어떻게 변하는가를 탐구한다. 그것의 패턴을 찾아내고, 그것이 다른 변수(들)와 갖는 관계를 발견하려고 한다.

사회분석을 하려면 데이터가 있어야 한다. 데이터는, 설문조사 데이터처럼 연구자에 의해 수집되기도 하고 POS나 센서 데이터처럼 기계적으로 수집되기도 한다. 설문조사의 경우 데이터 수집 단위(대상)가 개인(들)일 수도 있고 기업처럼 사회조직(들)일 수도 있다. 소매점의 경우 POS 데이터는 데이터 수집 단위가 개인(고객)이다.

수집된 데이터가 분석될 때는 먼저 분석 단위가 결정되어야 한다. 분석 단위란 연구자가 분석하려는 대상을 말한다. 세상에는 연구자의 관심만큼이나 다양한 종류의 분석 단위가 존재한다. 그것은 개인일 수도 있고, 조직이나 커뮤니티일 수도 있으며, 국가(나라) 혹은 지역일 수도 있다. 뿐만 아니라 웹페이지의 클릭 스트림(click stream), SNS의 친구관계, 판매된 상품, 신문의 사설 혹은 기사 등도 분석 단위가 될 수 있다.

위 사진은 치맥집이다. 치맥집에 대해 사회조사를 한다면 치맥집(들)이 분석 단위가 될 수도 있고 고객(들)이 분석 단위가 될 수도 있다. 만약 연구자의 관심사가 고객들의 소득, 나이, 직업, 성별, 주량, 안주 선호, 친구 어울림 방식(혼술, 집단 크기 등), 지출 등이라면 분석 단위는 개인(고객)이 될 것이고, 만약 연구자의 관심사가 손님 수, 남녀 고객 비율, 총매출, 병맥주 판매량, 생맥주 판매량, 치킨 판매량, 수익, 위치, 규모 등이라면 분석 단위는 레스토랑이 될 것이다. 고객의 지출과 레스토랑의 매출은 분석 단위가 다르지만 둘 다 POS 데이터를 사용할 것이다.

연구자는 먼저 자신의 연구 관심에 따라 분석 단위를 먼저 분명하게 파악하고, 그에 맞추어 데이터를 수집하거나 조정해야 한다. 때로는 수집된 데이터를 분석 단위에 맞게 조정하기가 불가능한 경우도 있다.

특히 사회 집단 단위에서 수집된 데이터는 개인 단위 분석에 사용될 수 없다. 만약 그렇게 사용될 경우 소위 생태학적 오류(ecololgical fallacy)에 빠지게 된다. 예컨대 치맥집 단위로 수집된 데이터를 볼 때 고객 중 남성 비율이 높은 치맥집들에서 병맥주 판매 비중이 크다고 해서 그 데이터로부터 남성은 생맥주보다 병맥주를 선호한다고 추론할 수는 없다. 남성 고객의 비중이 큰 치맥집에 온 여성 고객들이 병맥주를 많이 마셨기 때문에 병맥주 판매량이 많을 수도 있지 않겠는가.

[문제 3]에 대답은 그렇다이다. 남녀간의 사랑은 측정될 수 있다는 말이다. 실제로 연인이나 부부는 애인의 사랑, 배우자의 사랑을 측정하는 나름의 척도를 가지고 있다. 사랑한다는 말을 얼마나 자주 하는 지, 스킨쉽을 얼마나 자주 하는 지, 사랑스런 눈길을 얼마나 자주 보내는 지, 문자를 얼마나 자주 보내는 지, 문자 메시지에 얼마나 신속하게 답변 하는 지, 전화를 얼마나 자주 하는 지 등등 다양한 척도나 지표를 가지고 상대방의 사랑의 강도를 판단한다.

측정(measurement)이란 현상이나 대상의 변화에 수치를 부여하는 작업이다. 무게, 높이, 길이, 부피, 밀도 등 물리적 측정도 있고, 폭동, 혁명, 범죄, 불평등 같은 사회적 측정도 있으며, 분노, 사랑, 무관심, 자존감 같은 심리적 측정도 있지만, 측정은 공통적으로 현상을 수치화(quantify)한다.

계량적 사회연구가 가능하려면 연구자가 관심을 갖는 사회 혹은 사회심리 현상, 즉, 변수를 측정한 데이터가 있어야 한다. 사회통계학은, 연구자가 변수(들)을 측정한 데이터로부터 사회적(혹은 사회학적)으로 의미 있는 패턴을 찾거나 관계(그것을 사회적 규칙성, social regularities라고 부른다)를 발견하는 도구이다. (윤영민, 2017-08-15)

사회통계(4): 스마트폰으로 데이터분석을…

[문제] 통계학이나 데이터분석을 수행할 때 성능 좋은 컴퓨터가 필요할까? 

그렇기도 하고 그렇지 않기도 하다.

빅데이터를 가지고 데이터마이닝을 하거나 사례수가 많거나 복잡한 통계 도구를 사용하려면 성능 좋은 컴퓨터가 필요하다. 심지어 신경망(Artificial Neural Network)처럼 값비싼 GPU를 사용해야 하는 기계학습 모형도 있다.

그러나 그것은 반쯤만이 진실이다. 성능이 약한 노트북이나 태블릿 PC는 물론이고 탭이나 스마트폰을 가지고도 훌륭한 데이터 분석이 가능하다.

사실 요즘에는 누구나 손에 컴퓨터 한 대씩을 가지고 다닌다. 스마트폰 말이다. 컴퓨터로 치자면, 시중에서 유통되는 중저가 스마트폰도 2000년에 발표된 펜티엄 4 초기 버전 정도의 데이터 처리 능력을 지니고 있다.

스마트폰 앱이 많지 않기는 하지만 그래도 잘 찾아서 활용하면 통계 학습을 하거나 현업에서 통계를 사용하는데 있어 스마트폰만으로도 대부분의 분석이 가능하다. 위 사진은 내 스마트폰[Galaxy A5 (2016)]에 설치된 데이터분석용 앱들의 폴더이다.

이 중 가장 많이 사용하는 앱은 Excel이다. MS가 무료로 제공하는 이 앱은 PC버전에서 사용가능한 추가기능을 설치할 수 없는 한계가 있지만 함수만 잘 활용하면 기본적인 통계 분석은 물론이고 회귀분석같은 고급 기능까지 적용할 수 있다.

두 번째로 많이 사용하는 앱은 Probability Distributions이다. 다양한 확률분포를 가지고 특정 범위의 변수 값이 출현할 확률을 계산하거나 거꾸로 특정 확률에 해당되는 변수 값의 범위를 구할 수 있다. 아주 유용한 앱이다.

자료 처리나 통계 분석에서 내가 가장 많이 사용하는 소프트웨어는 엑셀과 구글 스프레드시트이다. 엑셀이 첫째지만 엑셀 데이터 파일이 생성되면 구글 스프레드시트로 데이터 탐색을 하곤 한다. (구글) 스마트폰 앱인 스프레드시트에는 분석 기능이 별로 없지만 이미 수행한 분석 결과를 가져올 수 있어 편리하다.

인문사회학도들은 거의 사용하지 않지만 공학계산기를 사용하면 편리한 때가 적지 않다. 스마트폰에 기본앱으로 제공되는 계산기도 간단한 수학계산에 사용할 수 있다.

계산기의 숫자 입력 칸 아래 있는 다음과 같은 아이콘을 클릭하면 계산기가 옆으로 누우면서 약간 복잡한 수학 계산이 가능해진다. 더욱 본격적인 공학용 계산기 사용하려면 에뮬레이터 앱을 설치한다. Wabbitemu는 스마트폰을 아래 그림처럼  TI 계산기로 바꿔주는 앱이다. 데이터를 입력하여 웬만한 통계분석을 수행할 수 있으며 매우 빠른 데이터 처리가 가능하다.

통계처리나 데이터분석을 하는데 도구를 탓하지 말자. 통계적 지식과 개념만 제대로 갖추고 있으면 스마트폰만으로도 멋진 통계분석, 데이터분석이 가능하다. (윤영민-08-15)

사회통계(3): 데이터의 유형

[문제] 다음 중 분산분석이나 회귀분석이 적용될 수 없는 변수는?

  1. 나이
  2. 종교
  3. 소득
  4. 교육수준

답은 2번 종교이다. 분산분석이나 회귀분석에는 의미있는 평균이 계산될 수 있어야 한다. 가장 기본적인 계산이 각 사례값과 평균의 차이인 편차를 구하는 것이기 때문이다.이 종교는 가톨릭, 개신교, 유교, 불교, 이슬람교, 유태교 등의 범주로 나누어지는 명목변수(nominal variable)이다. 설령 그 범주들을 숫자로 표현한다고 해도 평균값이 의미를 가질 수는 없다.

이 문제는 데이터의 유형에 관한 질문이다. 데이터 분석이나 활용에서 데이터의 유형은 대단히 중요하다. 데이터분석 모형이나 응용 프로그램은 특정한 유형의 데이터에만 타당하기 때문에 각 알고리즘이나 프로그램이 수용하는 데이터의 유형이나 수준을 정확히 인지해야 한다. 그렇지 않으면 알고리즘이나 프로그램이 아예 작동하지 않거나 작동하더라도 무의미한 결과를 준다.

통계학에서 데이터는 측정 수준(level of measurement)에 따라 자주 구분된다.  명목 데이터(nominal data), 순서 데이터(ordinal data), 구간 데이터(interval data), 그리고 비율 데이터(ratio data)가 그것이다. 명목 데이터는 성별, 혼인 상태, 종교와 같이 수치화할 수 없으며 범주(category)로 나누어 구분만 되는 데이터이다. 순서 데이터는, 성적(A, B, C, D, F)이나 리커트(Likert) 척도처럼 범주 사이에 서열이 존재하는 데이터이다. 명목 데이터와 순서 데이터를 합쳐서 질적(qualitiative 혹은 범주형, categorical) 데이터라고 불린다. 구간 데이터는 년도나 온도처럼 나누어질 수 없는 데이터이고, 비율 데이터는, 나이, 소득, 성적 평점처럼 절대 영점이 존재해서 나눗셈이 가능한 데이터이다. 구간 데이터와 비율 데이터를 합쳐서 양적(quantitative 혹은 수치형, numerical) 데이터라고 불리기도 한다. 각 데이터의 수준에 가능한 계산은 다음 표와 같다.


기계학습 분야에서는 데이터의 유형을 이산형(discrete) 속성과 연속형(continuous) 속성으로 분류하기도 한다. 그 두 속성의 예에 대해서는 아래 표를 참조하기 바란다.

참고로 연속형 데이터는 실수(real number) 값을 갖는데, 컴퓨터에서 실수는 부동(浮動) 소수점(floating point number)으로 표현된다. 이과 전공 학생들에게는 익숙한 표기법이지만 문과 전공 학생들에게 낯설 것이다. 아래 그림을 참고해서 익히기 바란다.

용어가 다소 혼란스럽기는 하지만 데이터분석은 여러 학문 분야가 관여되는 만큼 그러한 혼란은 피하기 어렵다. 그래도 여기서 소개한 정도만 기억하면 크게 도움이 될 것이다. (윤영민 2017-08-14).