컴퓨터 공학과 프로그래밍에 관련된 개념들을 초등학생도 이해할 수 있는 쉬운 설명을 목표로 글을 쓰고 있습니다.
베르누이 시행과 이항분포 쉽게 이해하기
공유 링크 만들기
Facebook
X
Pinterest
이메일
기타 앱
7.통계학 7강
베르누이 시행과 이항분포 쉽게 이해하기
확률 변수
동전을 던질 때 경우의 수는 두 가지로 정합시다. {“앞면”, “뒷면”} 둘 뿐입니다. 이를 {1, 0}으로 바꾸어도 아무런 문제가 없습니다. 확률 공간이 실수로 바뀌었습니다.
확률 변수는 불확실성을 내포한 변수라는 의미로 정의되었습니다. 동전을 던져보기 전까지는 알 수가 없는 값이죠. 우리는 이 확률변수를 대문자를 사용해서 표현합니다. X. 동전이 앞면이라면 X = 1, 뒷면이라면 X = 0
표본과 표본 평균 이해하기
통계학에서 우리는 보통 모집단을 무한한 집단이라고 생각합니다.
표본은 집단이 아닙니다. 하나의 표본은 하나의 값을 의미합니다. X1,X2,X3,...,Xn모두 모집단에서 뽑을 하나의 특정값을 아직 뽑지 않아 모르니 변수로 표현한 것일 뿐입니다.
이때 표본 평균은 n개의 평균이라면 Xˉ=n1×(X1+X2+...+Xn)이 될 것이고 k개의 평균이면 Xˉ=k1×(X1+X2+...+Xk)가 되겠죠?
베르누이 확률와 이항분포
베르누이 시행이란 값이 0과 1로만 나뉘어진 사건의 확률을 계산하는 방법입니다. p가 1이 일어날 확률이라고 합시다. 시행의 확률 변수를 Y라고 한다면 베르누이 시행의 기댓값과 분산은 다음과 같아요. E(Y)=1×p+0×(1−p)=p Var(Y)=E(Y2)−E(Y)2 =12×p+02×(1−p)−E(Y)2 =p+0−p2 =p(1−p)
이항분포는 베르누이 시행이 여러 번 일어나는 분포를 나타냅니다. 이 때 각 베르누이 시행은 독립이어야겠죠.
베르누이 시행은 B(1, p)로 쓸 수 있습니다. 이항 분포는 B(n, p)로 사용하는데 n개의 베르누이 시행 표본을 뽑는 것을 의미합니다. 따라서 이항분포에서 새롭게 사용할 확률 변수 X는 베르누이 시행 표본들의 합입니다.
[Linux, Unix] export, echo 명령어 알아보기 export 그리고 echo 명령어 유닉스 환경에서 개발을 하다보면 export와 echo라는 명령어를 종종 사용하게 됩니다. 간단하게 정리하려고 합니다. 유닉스를 사용한다면 Bash, ZSH라는 이름을 많이 들어보셨을 텐데요. Bash와 Zsh는 쉘 스크립트 언어를 말합니다. 터미널을 키면 그 터미널이 동작하는 방식을 결정하는 것이 쉘 스크립트 언어입니다. 변수와 echo 우리가 알아볼 것은 운영체제 변수와 쉘 변수 입니다. 운영체제 변수는 우리 프로그램이 돌아가는 운영체제의 변수를 말하는 것이 쉘 변수는 터미널 내에서 변수를 말하는 것입니다. water = "삼다수" 명령어를 터미널에서 입력한다면 water라는 쉘 변수를 만드는 것이 됩니다. echo 명령어는 변수를 출력하는 프린트 함수인데요. 다음과 같이 입력하면 water에 저장된 값을 터미널에 출력합니다. 만약 $를 빼고 출력한다면 문자열을 출력하는 것으로 받아들여 water를 그대로 출력하게 됩니다. echo $water unset water unset 명령어는 변수를 삭제하는 역할을 하지요. 내 컴퓨터가 어떤 쉘 스크립트 언어를 사용하는지 궁금하면 bash echo $SHELL 명령어를 통해서 어떤 쉘 스크립트 언어를 사용하고 있는지 알 수 있습니다. 지금까지의 변수들은 쉘 변수들을 다루어 보았구요. 이제 운영체제 변수에 대해서 알아보도록 할게요. env 위의 명령어를 입력하게 되면 운영체제 변수들을 출력하게 됩니다. 모든 프로그램은 운영체제위에서 돌아가기 때문에 운영체제 변수를 다른 말로 환경변수라고도 합니다. export export 명령어를 통해서 쉘 변수를 환경변수로 저장할 수 있는데요. export water 터미널에 위 명령어를 입력하고 env 라고 입력하면 환경변수 목록에 water가 추가되었음을 확인할 수 있습니다. 하지만 이...
컴퓨터는 단지 숫자다 :: 2. 부동 소수점 반올림과 Rounding 컴퓨터는 단지 숫자다 :: 근사와 Rounding 부동 소수점 표현법 이전 포스팅 보기 서론 프로그래밍 언어는 어떤 언어든지 완전하지 못하다. 이번 파트에서는 프로그램 언어가 가지는 태생적인 결함 중에서 근사에 대한 얘기를 해보려고 한다. 플라톤은 자신의 철학 사상을 얘기하면서 '이데아’를 주장하였다. 사람이 그린 어떤 삼각형도 모든 내각의 합이 결코 정확한 180도가 될 수 없지만 세상 밖에서는 모든 내각의 합이 정확히 180도인 삼각형의 원형이 존재한다는 사상이었다. 컴퓨터마저도 수를 표현함에 있어 '이데아’를 실현하지는 못한다. 예를 들어 0.1이라는 수를 컴퓨터는 정확히 표현할 수 없어 0.10000000000000000555111512... 이라는 값으로 저장한다. 정밀도에 따라 32비트 혹은 그 이상이 될 수 있겠지만 중요한 것은 컴퓨터도 때로는 정확한 값을 저장할 수 없다는 말이다. 이러한 오차는 별 것 아니라고 생각할 수 있겠지만 제대로 컨트롤 하지 못하는 수의 오차는 생각보다 심각한 문제를 일으키기도 한다. 1991년 2월 25일 1차 걸프 전쟁 기간중 사우디아라비아 Dharan에 위치한 미국 패트리엇 미사일 부대는 날아오는 이라크의 스커드 미사일을 격추하는 데 실패해 28명의 대원이 사망 했다. 미국 조사위는 이 실패에 관해 상세한 조사를수행한 결과 수치 계산의 부정확성이 주요 원인이라는 결론을 내렸다. 패트리엇 시스템은 내부적으로 0.1초마다 증가하는 카운터가 있었고 0.1초를 내부적으로 24비트에 저장해 근사값으로 더하고 있었다. 이 때 0.1초의 오차는 2 − 2 0 × 1 1 0 2^{-20}\times{1\over10} 2 − 2 0 × 1 0 1 이었고 약 100시간동안 패트리어트 시스템이 동작하고 있었고 스커드 미사일이 2000m/s로 날아오고 있었다. 그 결과 격추 시스템의 오차는 약 6...
댓글
댓글 쓰기