블로그 이미지
평범하게 살고 싶은 월급쟁이 기술적인 토론 환영합니다.같이 이야기 하고 싶으시면 부담 말고 연락주세요:이메일-bwcho75골뱅이지메일 닷컴. 조대협


Archive»


 
 

수리 통계 관련 서적

빅데이타/통계학 이론 | 2015. 2. 11. 01:31 | Posted by 조대협

통계학 개론책

http://www.yes24.com/24/goods/8339523?scode=032&OzSrank=1 

http://www.yes24.com/24/goods/2642692?scode=032&OzSrank=1

Headfirst 통계학


ML 서적

Building machine learning systems with python


본인은 구글 클라우드의 직원이며, 이 블로그에 있는 모든 글은 회사와 관계 없는 개인의 의견임을 알립니다.

댓글을 달아 주세요

T분포 and 잡담


지난 주에 확률분포를 보고, 어디다 써먹어야 되는지... 고민이 많았는데.

받은 조언은

보통 정규분포를 많이 사용하고, T분포나, F분포, 카이제곱 분포는 검정(가설 검증)에 많이 사용한다는 의견이었는데.

 

오늘 손안의 통계를 보니까는 T 분포 예제가 나옵니다.

T 분포는 정규 분포와 형태가 비슷하지만, 중앙의 높이는 더 낮고, 양쪽옆의 높이는 더 높은 형태로

데이타 분포가 정규 분포에 비해서 조금 더 산개된 모양을 가지고 있습니다.

 

어디다 쓰는지 봤더니

모집단의 평균이나 분산 값을 알지 못할때, 표본의 평균과 분산으로 모집단의 평균등의 신뢰 구간을 측정하는데 T 분포를 사용합니다.

 

손안의 통계 33페이지에 보면

대졸 신입 사원의 초임 표본 평균을 75만원이라고 하고, 표본 표준편차가 5만원일때, 전체 모집단의 초임을 신뢰도 95% 신뢰도 구간으로 구하는 문제입니다.

 

이 경우, T 분포를 이용하여, T 분포 신뢰구간 95%를 구하면 72.9361~77.0.639 가 됨을 볼 수 있습니다.


예제보고 다시 위키에 나와 있는 T분포를 보니

"모집단의 분산을 모를때, 모집단의 평균을 추정하는데 사용됨"

이제 이해가되네..

본인은 구글 클라우드의 직원이며, 이 블로그에 있는 모든 글은 회사와 관계 없는 개인의 의견임을 알립니다.

댓글을 달아 주세요

  1. 나그네 2019.11.16 13:42  댓글주소  수정/삭제  댓글쓰기

    글 잘 읽고갑니다 도움이 많이 되었습니다

왜 표준편차에서 절대값을 사용하지 않고, 제곱을 사용할까?


표준 편차는 편차의 제곱의 평균이다. 표준편차는 평균에서 실제 값이 얼마나 떨어져 있는지를 나타내는 것인데, 일반적인 설명들을 보면, 편차가 음수(-) 가 나올 수 있기 때문에 이를 양수화 하기 위해서 제곱을 하였다고 설명을 한다. (특히 인강들...)

그렇다면 제곱을 하지 않고 절대값(Absolute)값의 평균을 내면 되지 않을까? 이를 절대편차라고 하는데, 이를 사용하지 않고 제곱을 한 표준 편차를 사용 하는 이유는?


평균편차 = sum(xi-mean(x))/n으로 [ (x1-mean(x)) + (x2-mean(x)) ...]/ n의 형태로 1차 함수의 형태를 띤다. 그래서 평균절대편차의 경우에는, 1차 함수로, 그래프에 대해서 불연속성이 있다. (그래프가 꺽인다.)



표준편차의 경우, 편차를 제곱을 한 2차 함수로, 그래프에 대한 연속성이 있으며, 미분등이 가능하여, 통계 이론을 전계하기가 용이하다.



(통계학에서는 어떤 모수의 대표값을 사용할때 불편성, 일치성, 충분성, 최소분산의 여부를 따져서 가장 분산이 작고 불편추정량이면서 일치추정량이고 모든 표본들의 정보를 포함하는데 충분한가에 대한 증명을 거친후에 그 값을 사용하는데 바로 표준편차가 이러한 통계량입니다. 평균편차는 이러한 조건을 만족하지 않는 경우가 생기게 됩니다. 이는 수리적으로 증명이 가능하지만 매우 복잡하기 때문에 생략하겠습니다. - http://kin.naver.com/qna/detail.nhn?d1id=11&dirId=1113&docId=56782389&qb=7Y+J6reg7KCI64yA7Y647LCoIOyZgCDtkZzspIDtjrjssKg=&enc=utf8&section=kin&rank=1&searc 인용 )


실제로 더 복잡한 의미를 가지고 있는 것 같은데, 이건 좀 연구를 해봐야 겠고 실제로 Gradient decent 법을 이용한 선형회귀 분석에서, 최소 오차값을 찾기 위해서, 표준편차 공식에서 샘플 데이타 xi에서 미분 값을 구해서, 최소 값을 찾아가는 것을 보면, 여러모로 봐서나, 2차 함수 형태가 조금 더 유리한듯.


추가 : http://navercast.naver.com/contents.nhn?rid=22&contents_id=844&leafId=22 네이버 캐스트에 정리된 내용인데, 사실 읽어도 잘 이해가 안되긴하는 내용인데, 답글들을 참고할만함


본인은 구글 클라우드의 직원이며, 이 블로그에 있는 모든 글은 회사와 관계 없는 개인의 의견임을 알립니다.

댓글을 달아 주세요

  1. 안녕하세요 2015.03.30 22:50  댓글주소  수정/삭제  댓글쓰기

    평균절대편차 같은 경우 만약 모집단이 아닌 표본이라면 n-1로 나누어주어야 하나요?

  2. mypersona 2016.04.22 18:28  댓글주소  수정/삭제  댓글쓰기

    미분가능한 함수의 경우 근사해를 편미분을 통해 찾을 수 있기 때문이겠죠, 주로 통계학에서 보면 미정계수를 찾는 경우 미분방정식을 해가 최대 최소 값이 되는 것 같습니다.

  3. 안녕하세요요 2016.06.11 00:42  댓글주소  수정/삭제  댓글쓰기

    절대편차의 경우 그래프가 불연속이라 하셨는데 연속은 맞고 미분 불가로 바꾸어야 하지 않을까요?

  4. 헥헥 2016.11.30 13:17  댓글주소  수정/삭제  댓글쓰기

    '표준편차는 편차제곱평균의 제곱근'으로 고치셔야할 듯

근대 통계학의 개념과 유례

빅데이타/통계학 이론 | 2014. 11. 12. 22:21 | Posted by 조대협

근대 통계학의 개념과 유례


통계학이란,(네이버 지식 백과 참고)-기술통계학과, 추론 통계학

통계학(統計學, statistics)은 주어진 자료에서 합계나 평균과 같이 필요한 정보를 계산하는 등 자료를 수집·정리·요약하는 기술통계학(記述統計學, descriptive statistics)표본(자료)에서 얻은 정보를 이용하여 모집단(자료를 뽑은 대상 전체)에 대한 정보를 예측하고 불확실한 사실에 대한 결론을 이끌어 내는 데 필요한 이론과 방법을 제시하는 추론통계학(推論統計學 , inferential statistics)으로 구성되어 있다.


통계학은 표본 그 자체보다는 모집단에 관심을 가지고 일부분으로 전체에 대한 정보를 알아내려고 하는 것이며 이러한 것을 통계적 추론(statistical inference)이라 한다. 부분으로 전체에 대한 정보를 구하다 보니 오차가 나타나며 이러한 오차를 줄이고 또한 오차의 크기를 계산하여 정보 이용자에게 제공하는 것이 통계학의 목적이라고 할 수 있다.


통계학은 응용수학(應用數學, applied mathematics)의 한 분야로써 관찰 및 조사를 통해 얻을 수 있는 불균형적인 데이터로부터 응용수학의 기법을 이용하여 데이터의 성질, 규칙성 또는 불규칙성을 찾아낸다.


근대 통계학의 아버지 케틀레

근대 통계학은 19세기에 벨기에 천문학자 케틀레 아돌프 자크 케틀레 (Lambert Adolphe Jacque Quetelet) 에 의해서 정립 되었는데,

케틀레17세부터 아이들에게 수학을 가르키고, 23세에 박사 학위를 받았다. (아마 천재인듯)



17~18세기에는 천문학이 발전하는 시기였고, 이때문에, 천체의 움직임을 정확하게 측정하기 위해서 물리학이 함께 발전했던 시기 였다. 이때 천문학자들이 동일한 측량에도 불구하고 오차가 발생하는 것을 줄이기 위해서 통계학의 개념이 발전하게 되었다.

이 시기에 케틀레는 천문학을 공부하면서 자연스럽게 통계학을 배우게 되고, 이런 자연 통계학의 개념을 사회 통계학의 개념에 적용 시켰는데, 


자연통계학에서 근대 통계학으로의 발전

"1835년에 케틀레는 《인간과 능력 개발에 대하여 Sur l’homme et le developpement de ses faculte s, ou essai de physique sociale》을 발표하게 됩니다. 이는 인구통계와 범죄통계를 연구하여 구현상 이외의 도덕현상이나 범죄현상 같은 무질서해 보이는 사회현상에 있어서도 일종의 규칙성이 존재한다는 것을 증명한 연구였습니다. 케틀레는 월별ㆍ지역별ㆍ기온별ㆍ시간별 출생률과 연령ㆍ직업ㆍ지역ㆍ계절과 장소에 따른 사망률을 조사하며 신장과 체중ㆍ성장률ㆍ음주와 정신병력 여부, 자살ㆍ범죄 등도 변수에 넣어 계산한 끝에, 어떤 사회에서의 출생률과 사망률, 자살자의 수 등이 매년 거의 일정하다는 사실을 발견하였습니다. 그리고 인간특질측정이 정규분포 확률곡선에 따라 그 값 주위로 나타나는 중간 값을 기준으로 '보통사람'의 개념을 나타내어 평균인의 개념을 도입하였습니다. 케틀레의 이 연구를 기점으로 범죄 같은 자발적 행위가 모순 없이 수로 표시되는 그의 연구로 '도덕통계학'의 광범위한 연구와 자유의지설 대 사회결정론의 폭넓은 토론이 발전되었습니다."

즉 랑베르에 의해서, 자연 통계학이 사회 현상에도 적용 가능하다는 사실을 밝히면서 기존의 자료나 사실을 근거로 하여 자료에서 의미를 찾아내는 통계에서, 불확실성을 기반으로 미래를 예측하거나 표본 집단을 통해서 전체를 예측하는, 예측 기반의 근대 통계학이 성립되어 간것이다.



참고

- http://hikostat.kr/1986

- http://terms.naver.com/print.nhn?docId=2164900&cid=44413&categoryId=44413

본인은 구글 클라우드의 직원이며, 이 블로그에 있는 모든 글은 회사와 관계 없는 개인의 의견임을 알립니다.

댓글을 달아 주세요

평균,표준편차,분산의 개념

빅데이타/통계학 이론 | 2014. 11. 12. 01:18 | Posted by 조대협

표준 편차의 개념


쉽게 말하면 평균(mean) 에 대한 오차이이다. 즉 , 실제 데이타 값이 평균을 기준으로 할때 얼마나 들쭉 날쭉하냐를 나타내는 것이다. 평균이 m이고, 표준편차가 3이라고 할때, 실제 값은 m+-3 값이라는 것이다.


먼저 편차랑, 원래의 값에서 평균을 뺀 값인데, 편차는 +도 될 수 있고, -도 될 수 있다.

그러면 우리가 구하고자 하는 표준편차라는 것은 평균 값이 실제 값에서 부터 얼마나의 오류가 있느냐 인데

예를 들어 4개의 데이타가 있을 때 평균을 m이라고 가정하고, 각 값이 m+1,m-2,m+3,m-4 라고 할때

편차의 합은 실제로 1+2+3+4=10 이 되야 하지만, 실제 값이 -2,-4 가 있기 때문에, (값-m)을 합한 값으로 계산해보면 1-2+3-4로 전혀 엉뚱한 값이 나온다.

그래서 이 음수를 양수화해야 하는데, 그러한 방법중의 하나가 제곱이다.

편차들을 합하기전에 제곱을 해서 합하면 1+4+9+16이된다. 이것이 바로 분산(Variance)으로 "편차의 제곱의 합"이다.


그렇다면 분산(Variance)을 바로 쓰지 않고, 표준편차를 구하는 이유는? 

분산은 편차에 제곱을 하여 계산을 하였기 때문에, 실제  값에서 너무 멀어져 있다. 그래서 실제 값으로 근접 시키기 위해서 제곱근(루트)를 씌워준 것이다. (분산에서 제곱했으니, 반대로 제곱근을 씌운다.)

즉 분산에 루트를 씌운것이 표준 편차(Standard deviation) 이며, 이 표준편차는 평균으로 부터 원래 데이타에 대한 오차범위의 근사값이다. (원래 데이타로 부터의 오차의 범위는 편차의 절대값들에 대한 평균값으로 절대편차라고 하며 Absolute deviation, 표준 편차와 값이 다소 다르지만, 평균값으로 부터의 얼마나 오차가 있는지를 표현한다는 의미에서는 같다. 그러면 왜 절대편차를 사용하지 않고 표준 편차를 사용하는가는 다른 글에서 다루도록 한다. 결론만 말하자면, 제곱을 한 표준편차가 모델링과 각종 통계 수식을 응용하기에 용이하다)


여기서 평균,분산,표준편차의 개념에서 모집단과 표본의 개념을 짚고 넘어갈 필요가 있다.


통계학이란 굳이 다 조사하지 않더라도, 대충의 결과를 알 수 있다. 일종의 prediction 의 개념이다.

조사대상인 모집단(population) 전체를 조사하는 경우를 전수조사라고 한다.

모집단이 커서 전수조사가 어려운 경우, 집단의 특성을 추정하기 위해서 일부 표본(sample)만 추출하여 하는 조사를 표본조사라고 한다. 이렇게 표본을 조사함으로써, 원래 모집단의 특성을 추측하는 것을 추정이라고 한다. (근대 통계학의 추론통계학 - inferential statistics의 개념 )


※ 표본을 추출하는데도 여러가지 방법이 있다

 단순임의추출(simple random sampling) : 항아리에 공을 넣고, 아무 공이나 꺼낸다.

- 복원 추출(sampling with replacement) : 항아리에서 공을 꺼낸 후, 꺼낸 공을 다시 넣고 공을 꺼낸다.

- 비복원 추출(sampling without replacement) : 항아리에서 공을 꺼낸 후 다시 넣지 않고 다른 공을 꺼낸다.


그외에도 층화 임의 추출(Stratified random sampling),포아송 추출 ,계통 추출(Systematic sampling)

표본 추출 방법에 대해서는 나중에 다시 다룬다.


※ 이 개념을 보니, 선형회귀에서 Gradient decent는 표본 추출을 통해서, 최 근접 모델을 찾는 방법이다.


이렇게 평균,표준편차,분산에 대해서 이것이 모집단에 대한 값이냐 표본에 대한 값이냐를 구별하기 위해서 기호를 분리 따로 사용하는데


표본 평균은 사실 고정값이 아니라, 표본의 크기에 따라 변화는 일종의 확률변수이다.

이 표본평균의 확률변수의 개념과, 표본 추출 방식 그리고, 분포에 대해서 다음에 또 정리하기로 한다.


참고 자료 : 


- http://m.blog.naver.com/dalsapcho/20147545698
- https://www.youtube.com/watch?v=b3O-dUlyl54
- http://math7.tistory.com/14

분산과 표준편차를 확률변수의 개념으로 설명한 내용 http://ko.wikipedia.org/wiki/%EB%B6%84%EC%82%B0


본인은 구글 클라우드의 직원이며, 이 블로그에 있는 모든 글은 회사와 관계 없는 개인의 의견임을 알립니다.

댓글을 달아 주세요

Vectorization (수열의 행렬화)

빅데이타/통계학 이론 | 2014. 11. 4. 21:58 | Posted by 조대협

행렬 A=[1 2 3 4 5] 가 있고, 행렬 B = [6 7 8 9 10] 이 있을 때

Sum(A(i) * B(i))의 값 1*6+2*7+…. 는 일반적으로

for(i=1;i<=5;i++) sum += A(i)+B(i) 가 된다.

이게 일반적인 프로그래밍 방식으면, 이런 공식을 행렬화하여 계산하는 것을 Vectorization이라고 한다.

Sum(A(i) * B(i)) = A+transpose(B)  로 표현할 수 있다.


이렇게 Vectorization을 하면서 얻을 수 있는 장점은 실제 코딩의 양을 줄일뿐 만아니라, 벡터 계산은 병렬 계산이 가능하기 때문에, Multi core를 잘 활용할 수 있다는 장점도 있으며

CPU 자체가 한클럭에 여러 계산이 가능하다.

일반적으로 64 bit cpu register를 앞의 일반적인 방식으로 계산하면 Register RxA,RxB,RxC에 대해서 RxC = RxC + (RxA:=A(i) ) * (RxB:=B(i)) 를 계산해서 한 클럭에 즉 1*6 공식 하나만 처리가 가능하다

그러나 Vectorization을 하면 64 bit register 16bit 4개의 sub register로 나눠서

RxB = [ 1 2 3 4]

RxB = [6 7 8 9]

로 해서 한클럭에 1*6+2*7+3*8+4*9 4개의 의 연산을 처리할 수 있기 때문에 빠른 속도를 낼 수 있다.

 

Coursera 강의 2주차 Octave강의 中


대부분의 수식 계산은 벡터화를 어떻게 하는가가 관건인듯


관련글

  • http://www.matlabtips.com/the-art-of-vectorizing-part-1/
  • http://www.matlabtips.com/the-art-of-vectorizing-part-2/
  • http://www.matlabtips.com/the-art-of-vectorizing-part-3/
본인은 구글 클라우드의 직원이며, 이 블로그에 있는 모든 글은 회사와 관계 없는 개인의 의견임을 알립니다.

댓글을 달아 주세요