본문 바로가기

Data Science

데이터 분석과 선형대수

오늘부터 스터디가 시작됐다.

Khan Academy의 linear algebra를 공부하는 스터디다.

3달에 23만원을 지불한다.

이 스터디를 주관하는 곳은 카이스트 나온 사람들이 만든 연구소로 연구소에서 용돈벌이 하는 듯 하다.

이쪽 분야에는 참 카이스트 나온 사람들이 많은 것 같다.

작년에도 학원을 다녔으나, 처참하게 실패한 이후 공부를 해야겠으나, 영어와 마찬가지로 난 여전히 하지 않는다.

그래서 비싼 돈 내고 주말에 가는 스터디를 신청했으니 열심히 해봐야겠다.


사족인데 영어의 중요성이 점점 더 커지는 듯하다.

과거에는 국내에서 쓴 논문이나, 책으로만 충분히 공부가 가능했으나, 대부분의 교육자료와 참고자료가 모두 영어다.

과거에도 지금도 영어가 필수는 아니지만 영어를 할 줄 안다는 것의 유용성이 훨씬 높아진 것같다.


빅데이터니, 머신러닝이니 딥러닝이니 하는 말이 유행하기 훨씬 전부터 데이터 분석에서 수학적 능력이 중요하다고 생각했다.

뼈저리게 느낀 것은 대학원 다닐때였다. 학부때는 말로 넘어갈 수 있었던 것들이 사실 수학을 알지 못하면 제대로 분석할 수 없었던 것이었고, 내가 제대로 분석하지 못한 것을 말로만 설명하는 것은 한계가 있었다.

모든 데이터 분석의 기초라 할 수 있는 OLS. 데이터 분석을 하는 사람 중에 OLS를 활용하지 않은 사람은 거의 아얘 없을 것이다.

OLS를 제대로 사용하기 위해서는 "OLS가 BLUE다."라는 것을 이해해야 한다. 그러나 나뿐만 아니라 이를 완벽히 이해하고 사용하는 사람은 거의 없을 것이라 생각한다. "OLS가 BLUE다."라는 것을 증명하기 위해서는 선형대수가 필요하다. 그래서 선형대수를 배워야겠다고 생각했다.'


OLS와 별개로 데이터 분석에 선형대수가 필요한 이유는 또 있다.

데이터 분석을 한다고 할 때 데이터는 최소한 1개는 아니다.

데이터 1개는 통계적으로 분석할 수 없기 때문에 무의미하다.

이 때 데이터 1개라는 것은 관측치(observation)가 1개라는 것이다.

따라서 데이터 분석에서의 데이터는 여러 개의 관측치를 분석하는 것이다.

데이터를 분석하는 대부분의 사람들은 그룹(계급)과 빈도(도수)로 구성된 표(예를 들어 도수분포표)를 보았을 것이다.

파이썬을 통해 데이터 분석을 할 때도 대부분 pandas를 이용해 data를 dataframe 형태로 변형한 이후 분석을 수행한다.

그렇다면 data를 dataframe 형태로 바꾼다는 것은 무엇을 의미하는 것일까.


사람(그룹, 계급)

아이스크림 구매횟수(빈도, 도수) 

사람1

10 

사람2

15 

사람3


data 분석에서 observation이 1개인 것은 의미가 없다. 위 table에서는 3사람(observation 3개)의 data가 있다.

observation은 차원(dimension)이다. dataframe에서 행(row) 갯수는 관측치 갯수고, 차원의 갯수다. 

열(column)은 data 종류라고 할 수 있다. 어떻게 보면 '진짜' 데이터의 갯수다. 보통은 변수(variable, feature)라고 표현한다.

점의 갯수라고 표현할 수도 있다.

사람1의 점1개, 사람2의 점1개, 사람3의 점 1개 즉 위의 표는 3차원(dimension)의 점 1개를 표현한 것이다.


변수의 갯수(열 column)가 늘어난다는 것은 점이 더 생긴다는 것이다.

사람(그룹, 계급) 

아이스크림 구매횟수(변수1)

커피 구매횟수(변수2) 

 사람1

10 

 사람2

15

10 

 사람3

5

 15

흐린 빨간 색 점은 아이스크림 구매횟수 파란색 점은 커피 구매횟수다.


위의 경우 관측치가 3개라서 3차원이지 보통 데이터 분석에서 이용할 수 있는 최소한의 observation 갯수는 5,000개다.

아무리 적어도 10개, 100개 보다는 많아야 한다.

그렇다면 우리는 이를 10차원 이상으로 표현해야 한다. 3차원 이상은 상상하기도 표현하기도 어려울 뿐만아니라 이해하기도 힘들다.


따라서 대부분의 데이터 분석에서는 1,000차원의 점 1개를 2차원의 점 1,000개로 표현한다.

첫번째 table의 경우 3차원의 점 1개를 2차원의 점 3개로 표현할 수 있다.

두 번째 table의 경우 2가지 형태로 표현 가능하다.


3차원의 점 2개를 2차원의 점 6개로 그려보았다.

분석에서 사용하는 대부분의 형태는 위의 그림과 같은 형식이다.

3차원의 점 2개를 2차원의 점 3개로 표현한 것이다. 제일 왼쪽은 사람3, 가운데는 사람1, 오른쪽은 사람2다.


3차원의 점 2개를 커피 구매횟수와 아이스크림 구매횟수를 축으로 2차원의 점 3개로 표현했다.

위의 형태의 그래프는 커피 구매횟수와 아이스크림 구매횟수가 약한 음(-)의 상관관계를 갖는다고 표현한다.


---> 이어서





'Data Science' 카테고리의 다른 글

노동패널 data 구성 전처리 방법 정리  (3) 2018.02.07
Data Science의 정의  (0) 2017.11.14
Data Science의 필요성  (0) 2017.11.13
확률과 베이즈 정리  (0) 2017.11.09
'코딩' 교육  (0) 2017.10.13