전체 글 (314)

반응형

Word Embedding


Word Embedding이란 Deep Learning 분야, 이 중에서도 특히 자연어처리에서 필수적으로 알아야할 개념이다. Word Embedding은 Word를 R차원의 Vector로 매핑시켜주는 것을 말한다.



예를 들어 위와 같이 cat이나 mat같은 단어를 특정 차원의 벡터로 바꾸어주는 것이다. 이렇게 단어를 벡터로 바꾸어주는 것은 하나의 Matrix이다. 이를 W라 부른다. W 함수는 매우 중요하다. 이를 통해 단어가 의미 있는 벡터로 변한다. 비슷한 두 개의 단어는 비슷한 벡터로 바뀐다던지 하는 식으로 말이다. W는 Learning을 통해 학습할 수 있다.


예를 들어, 5000개의 단어로 이루어진 단어 세트가 있으면 각각의 단어는 [0,0,0,1,0 ... 0,0,0] (5000열) 과 같이 나타낼 수 있다. 이 때 각각의 단어를 Word Embedding을 통해 32차원 벡터로 나타내고자 하면 W의 차원은 5000*32이다. 이를 학습하여 [0.2,0,4,0.5 ... 0.8,8] 과 같은 32차원의 벡터를 형성해낸다.


Word Embedding은 다음과 같은 놀라운 특성도 가질 수 있다.



woman을 나타내는 벡터와 man을 나타내는 벡터의 차이는 남녀의 차이를 나타내는 벡터이다. 이것이 aunt와 uncle의 차이를 만들어낸다. 예를 들어 he is a man는 옳은문장 she is a man은 틀린 문장을 구분하는 classifier에서 aunt와 uncle에 대해서도 똑같은 일을 할 수 있게 만든다.


참고


http://colah.github.io/posts/2014-07-NLP-RNNs-Representations/

반응형
반응형

윈도우 1주년 업데이트(레드스톤 버전)부터 지원되는 윈도우 bash shell 기능을 통해 윈도우 우분투에 gatk를 설치하여보겠습니다.


1. 윈도우 커맨드를 열고 "bash" 명령어 입력을 통해 윈도우 bash shell 실행


윈도우 우분투를 이용하는 방법은 https://blogs.msdn.microsoft.com/eva/?p=7633 참고해주세요.


2. oracle java 1.8 버전 설치

sudo add-apt-repository ppa:webupd8team/java
sudo apt-get update
sudo apt-get install oracle-java8-installer


설치 후 java -version을 입력하고 아래와 같은 문구가 나오면 제대로 설치된 것입니다.


java version "1.8.0_131"
Java(TM) SE Runtime Environment (build 1.8.0_131-b11)
Java HotSpot(TM) 64-Bit Server VM (build 25.131-b11, mixed mode)



3. GATK jar 파일 다운로드


https://software.broadinstitute.org/gatk/download/



4. 위의 jav 파일이 있는 곳으로 cd를 통해 이동 후, 아래 명령어 입력


java -jar GenomeAnalysisTK.jar -h



반응형

'Domains > Bioinformatics' 카테고리의 다른 글

platypus 설치  (0) 2017.08.07
samtools 설치시 에러 해결  (0) 2017.07.16
non-coding RNA는 어떻게 만들어지나?  (0) 2017.05.28
tRNA란 무엇인가?  (0) 2017.05.25
의료 영상 - PACS, DICOM이란?  (2) 2017.01.20
반응형

임상실험은 사람을 대상으로하는 실험이며, 특정 집단을 대상으로 임의로 그룹을 나누고(Randomization), 그룹별로 처치를 다르게 하여, 그룹별 결과의 차이를 살펴 보는 실험이다. 임상실험은 스터디 디자인 중 메타분석을 제외하면 가장 결과의 타당도가 높은 실험이며, 인과성 추론(causal inference)의 강한 증거가 된다.


예를 들어 10명을 대상으로 임상실험을 한다고 하면


실험 참여자 : {1,2,3,4,5,6,7,8,9,10}


이들 중에 5명은 A그룹으로 A약을 처치하고 5명은 B그룹으로 위약을 처치한다고 하자. 그러면 5명을 임의추출 하여 A 그룹으로 그 이외의 5명을 B 그룹으로 나누게 된다. (일반적인 임의 추출법을 사용하는 경우) 예를 들어,


A : {2,3,7,8,10}

B: {1,4,5,6,9}

(randomization이 잘 됐다면 두 그룹에서 confounder의 분포는 기대적으로 같다.)


임상실험의 장점은 다른 관찰 실험들에 비해 Randomization을 통해 많은 바이어스를 제거할 수 있다는 것이다. Randomization을 잘 한다면, 바이어스의 3가지 종류(selection bias, information bias, confounding bias) 모두 감소시킬 수 있다.


하지만 randomization이 잘 안되었을 경우, RCT에도 바이어스가 생길 수 있는데 그 예는 아래와 같다.


  • Selection bias & confounding bias : randomization이 제대로 되지 않았다면, 그룹별로 기본적인 특성이 달라서 생길 수 있다.
  • Information bias
    • Performance bias : 연구자가 그룹별로 다르게 대우한다면 결과에 바이어스가 있을 수 있다. 예를 들어, 신약 임상실험에서 신약을 섭취한 대상의 예후를 좋게하기 위해 더 케어를 해준다면 이런 바이어스가 나타날 수 있다.
    • Reporting bias : 결과가 좋은 환자만을 대상으로 리포팅한다면 바이어스가 생길 수 있다.
    • Attrition bias : 중도 탈락자에 의해 생길 수 있는 바이어스.

이 때, selection bias와 confounding bias는 눈가림법(bliding method)을 사용하고 표본의 수를 늘린다면 어느정도 해결 할 수 있을 것이다. 하지만 Information bias는 사람에 의해 일어나서 막기가 힘든 바이어스이다. (물론 중도 탈락자한테 돈을 지급해 줄테니 실험에 참여해달라고 할 수도 있다.) 이처럼 여러가지 스터디 디자인 중에 증거력이 좋은 임상실험이라 할지라도 결과에 어느정도 바이어스가 있을 수 있다.






반응형
반응형

적합도 검정이란 Goodness-of-fit 검정이라고 흔히 말하며, 데이터의 분포가 특정 분포함수와 얼마나 잘 맞는지를 검정하는 방법입니다. 가장 많이 사용하는게 정규성 검정인데, 모집단의 분포를 정규분포로 가정하고 하는 분석법, 예를 들어, t-test, anova, 회귀분석 등을 할 때, 데이터가 정규분포를 따르는가를 확인하는데 이 적합도 검정이 필요합니다.


적합도 검정에는 여러 방법이있는데 대표적인 것으로 카이제곱 검정과, Kolmogorov-Smirnov 검정이 있습니다. 카이제곱검정은 기댓값과 관측값을 이용한 방법이며, K-S 검정은 누적분포함수의 차이를 이용한 검정법입니다. 아래는 두 검정법를 비교한 표입니다.



Kolmogorov-Smirnov 검정

카이제곱 검정

 연속형 데이터에 사용 가능

 이산형 데이터에 사용가능. 연속형일 경우 그룹으로 묶어야함

 필요한 표본 크기가 상대적으로 작음

 표본 크기가 충분히 커야 정확도가 높음 (작으면 정확검정)

 모수를 추정해야하는 경우 정확도가 낮음

 자유도에 모수 추정된 것이 반영됨

반응형
반응형

SAS 코드


data corr;
input method1 method2;
cards;
132 130
138 134
144 132
146 140
148 150
152 144
158 150
130 122
162 160
168 150
172 160
174 178
180 168
180 174
188 186
194 172
194 182
200 178
200 196
204 188
210 180
210 196
216 210
220 190
220 202
;run;



상관계수 출력 및 모상관계수=0을 검정


proc corr;
var method1 method2 ;
run;



상관계수 출력 및 모상관계수=0.98을 피셔의 방법으로 검정


proc corr fisher(rho0=0.98);
var method1 method2 ;
run;

반응형
반응형

크루스칼-왈리스 검정은 모수적 방법에서의 one-way anova와 같은 목적으로 쓰입니다.


대신 그룹별로 평균이 아닌 중위수가 같은지 아닌지를 검정합니다.



A (98,95,76,95,83,99,82,75,88)
B (95,71,80,81,77,70,80,72,81)
C (77,79,91,84,80,93,87,81,83)



예를 들어, 아래와 같은 세 그룹이 있는 이 세 그룹간의 중위수의 차이가 있는가를 알아보기 위하여 쓰입니다.


즉, H0 : A의 중위수 = B의 중위수 = C의 중위수 vs H1 : 최소 한 그룹의 중위수가 다르다.


이를 검정하기 위한 검정통계량은 아래와 같습니다.




이 때 N은 전체 표본의 수이고, ni는 각각의 그룹의 표본 수 입니다. ri는 표본들을 모두 합친 후 순위를 냈을 때의 그룹별 데이터의 순위값입니다. 만약 중위수가 정말 같다면(H0=True) ri의 평균은 비슷할 것입니다. 다르다면 이 값이 커지게 되고, 유의하게 컸을 때, H0를 기각하게 됩니다.


H의 정확한 분포를 구하는 것은 매우 복잡하기 때문에 그룹당 표본수가 충분하면 H가 자유도 (k-1)인 카이제곱 분포를 따른다는 것을 이용하여 검정할 수 있습니다. (이 때 k=그룹의 수)


R 을 통하여 크루스칼 왈리스 검정을 하는 법은 아래와 같습니다.



value1 <- c(98,95,76,95,83,99,82,75,88)
value2 <- c(95,71,80,81,77,70,80,72,81)
value3 <- c(77,79,91,84,80,93,87,81,83)
category <- c(rep("A",9),rep("B",9),rep("C",9))
data <- data.frame(value=c(value1,value2,value3), category)


kruskal.test(value~category, data=data)



결과

Kruskal-Wallis rank sum test



data: value by category


Kruskal-Wallis chi-squared = 5.6972, df = 2, p-value = 0.05793


반응형
반응형

[ 모수 검정과 비모수 검정 비교표 ]

 

 구분

 모수 검정

(Parametric Test)

비모수 검정

(Nonparametric Test) 

 When to use

 정규분포 가정 만족 시

 (normal distribution)

 정규분포 가정 불충족 시,

 혹은 모집단이 어떤 분포를 따르는지 모를 때

 (non-normal distribution, or un-know distribution,

  or very small sample size, or rankded data)

Statisctic

 평균 (mean)

 중앙값 (median) 

 1 sample

 1 sample t-test 

 1 sample Wilcoxon signed rank test

 2 samples

 2 sample t-test

 Wilcoxon rank sum test,  

 Mann-Whitney U-test

 paired 2-sample t-test

 Wilcoxon signed rank test

 more than

2 samples

 one-way ANOVA

 Kruskal-Wallis test



출처: http://rfriend.tistory.com/130 [R, Python 분석과 프로그래밍 (by R Friend)]

[ 모수 검정과 비모수 검정 비교표 ]

 

 구분

 모수 검정

(Parametric Test)

비모수 검정

(Nonparametric Test) 

 When to use

 정규분포 가정 만족 시

 (normal distribution)

 정규분포 가정 불충족 시,

 혹은 모집단이 어떤 분포를 따르는지 모를 때

 (non-normal distribution, or un-know distribution,

  or very small sample size, or rankded data)

Statisctic

 평균 (mean)

 중앙값 (median) 

 1 sample

 1 sample t-test 

 1 sample Wilcoxon signed rank test

 2 samples

 2 sample t-test

 Wilcoxon rank sum test,  

 Mann-Whitney U-test

 paired 2-sample t-test

 Wilcoxon signed rank test

 more than

2 samples

 one-way ANOVA

 Kruskal-Wallis test



출처: http://rfriend.tistory.com/130 [R, Python 분석과 프로그래밍 (by R Friend)]

[ 모수 검정과 비모수 검정 비교표 ]

 

 구분

 모수 검정

(Parametric Test)

비모수 검정

(Nonparametric Test) 

 When to use

 정규분포 가정 만족 시

 (normal distribution)

 정규분포 가정 불충족 시,

 혹은 모집단이 어떤 분포를 따르는지 모를 때

 (non-normal distribution, or un-know distribution,

  or very small sample size, or rankded data)

Statisctic

 평균 (mean)

 중앙값 (median) 

 1 sample

 1 sample t-test 

 1 sample Wilcoxon signed rank test

 2 samples

 2 sample t-test

 Wilcoxon rank sum test,  

 Mann-Whitney U-test

 paired 2-sample t-test

 Wilcoxon signed rank test

 more than

2 samples

 one-way ANOVA

 Kruskal-Wallis test

 

이론적인 부분에 대해서는 wikipedia (☞ https://en.wikipedia.org/wiki/Mann%E2%80%93Whitney_U_test) 를 참조하시기 바랍니다.



출처: http://rfriend.tistory.com/130 [R, Python 분석과 프로그래밍 (by R Friend)]

모수검정과 비모수검정 비교표


구분 

모수

비모수

 언제 쓰이나

검정의 가정을 만족할 때

(주로 모집단의 정규성

 가정 불만족, 작은 샘플 사이즈,

순위로만 된 데이터

 통계량

평균

중위수

 1 sample

1 sample t-test

sign test, wilcoxon signed rank test 

 2 sample

2 sample t-test

wilcoxon rank sum test

mann-whitney u test

 paired 2sample

 paired t-test(1 sample t-test)

sign test, wilcoxon signed rank test

 more than 3sample

 one-way anova

kruskal-wallis test



참고

http://rfriend.tistory.com/130

반응형
반응형

윌콕슨 순위합 검정은 두 표본의 중위수를 비교하는데 쓰인다. 모수적 방법에서 이표본 t-test와 같다.


A, B 회사로부터 각각 생산된 계피가루 한 통의 무게를 X,Y라고 하자 n1=8, n2=8로 표본을 추출하였다.


X = {117.1, 121.3, 127.8, 121.9, 117.4, 124.5, 119.5, 115.1}

Y = {123.5, 125.3, 126.5, 127.9, 122.1, 125.6, 129.8, 117.2}


H0 : X의 중위수 = Y의 중위수 vs H1 : X의 중위수 != Y의 중위수


이 때 X, Y가 결합된 표본을 만들고 이 표본을 오름차순으로 정렬해보자.


XY = {115.1, 117.1, 117.2, 117.4, 119.5, 121.3, 121.9, 122.1, 123.5, 124.5, 125.3, 125.6, 126.5, 127.8, 127.9, 129.8}


그리고 Y 값들에 대하여 밑줄을 쳐놓고, 이 Y 값들의 순위를 모두 합쳐보자.


W = 3+8+9+11+12+13+15+16 = 87


이 때 W를 윌콕슨 통계량이라고 한다. 만약 이 W 값이 너무 작거나 너무 크면 H0를 기각할 유의한 증거가 있는 것이다. 그러면 우선 H0하에서 W의 분포를 알아야하는데, W의 정확한 분포를 알기는 매우 힘드므로 중심극한 정리를 이용한다.


우리가 알 수 있는 것은 E[W] = n2(n1+n2+1)/2, V[W] = n1n2(n1+n2+1)/12 이다. 그러므로 중심극한정리를 이용하여


W ~ N(n2(n1+n2+1)/2, n1n2(n1+n2+1)/12)


n1=8, n2=8을 이용하여 평균과 분산을 각각 구하면, 68, 90.66 이다.


위에서 구한 W 값을 표준화 시키면,

z = (87-68)/sqrt(90.66) = 1.99


양측검정에서 기각역은 z > 1.96 or z < -1.96이므로 H0를 기각한다.







반응형
반응형

Wilcoxon Signed Rank Test는 일표본에 대하여 중위수를 검정하는데에 쓰인다. 또는 paired 된 데이터의 중위수의 차이가 있는지를 검정하는데 쓰인다. 모수적 방법에서 일표본 t-test와 같은 목적으로 쓰인다.


표본이 176.9, 158.3, 152.1, 158.8, 172.4, 169.8, 159.7, 162.7, 156.6, 174.5, 184,4, 165.2, 147,8, 177.8, 160.1, 160.5 라고 하자.


H0 : 중위수 = 160 vs H1 : 중위수 != 160 를 검정하도록 해보자.


우선 | Xi - 160 | 을 오름차순으로 차례대로 줄 세운다.


0.1, 0.3, 0.5, 1.2, 1.7, 2.7, 3.4, 5.2, 7.9, 9.8, 12.2, 12.4, 14.5, 16.9, 17.8, 24.4


그러고 나서, Xi-160 < 0 인 데이터에 대해서는 표시를 해놓는다. 그리고 부호순위를 모두 더한다. 밑줄친 부분에 대한 순위는 음수로 계산한다.


W = 1-2+3-4-5+6-7+8-9+10-11+12+13+14+15+16 = 60


만약 W의 값이 너무 크거나 너무 작으면 중위수가 160이라는 귀무가설을 기각하게 된다. 그러면 그 값이 유의하게 큰지 작은지는 어떻게 알 수 있을까? 이를 위해선 우선 H0하에서 W의 분포를 알아야한다. 하지만 실제로 W의 분포를 알기는 매우 어렵고 복잡하다. 이 때 우리가 알 수 있는 것은 W통계량의 평균은 0, 분산은 n(n+1)(2n+1)/6 이라는 것이다. (H0하에서 중위수의 성질을 이용해 평균과 분산을 구할 수 있다.) 이 값들로 중심극한정리를 사용하여 W의 분포를 정규분포로 근사시킨다. 이렇게 할 수 있는 이유는 W가 어떠한 분포를 갖는 값들의 합이기 때문이다. 예를 들어, 이 경우에 H0하에서 위 식의 첫번째 term은 1/2 확률로 1, 1/2 확률로 -1/2 이다. 두 번째 term은 1/2확률로 2, 1/2 확률로 -2이다. 이 값들을 모두 합친 W 통계량은 종모양의 분포가 나올 것이다. 그러므로 중심극한 정리를 적용시킬 수 있다.


n=16이므로, W를 표준화 시키면 Z = 60-0/sqrt((16)(17)(33/6)) = 1.525 이다.


양쪽 검정이므로 유의수준 0.05에서 기각역은 Z>1.96 or Z<-1.96이다. 계산한 z값이 기각역에 포함되지 않으므로 중위수가 160이 아니라는 유의한 증거가 없으므로 H0를 기각하지 못한다. 또한 p-value = 2*P[z > 1.525] 이다.


반응형
반응형

비모수 통계학이란 모집단의 분포를 가정하지 않고, 오직 데이터를 통해서만 데이터를 검정하는 방법을 의미한다. 비모수 통계학은 영어로 non-parametric statistics라 하고, distribution-free 방법이라고도 말한다.


모수적 방법에서 t-test의 예를 들어보면, 기본 가정중의 하나가 바로 모집단의 "정규성" 이다. 모집단이 정규분포가 아니라면 t-test의 신뢰도는 낮아지게 된다. 그러므로 보통 비모수 방법을 사용하는 이유가 바로 모수적 방법에서의 가정이 만족하지 않을 때이다. t-test의 경우에는 모집단에 대하여 정규성 검정을 수행한 후 정규분포가 아니라는 근거가 있을 때는 비모수적 방법을 사용하면 된다.


비모수 통계학의 장점은 아래와 같은 것들이 있다.


  1. 모집단의 분포가 어떻든지 사용할 수 있다.
  2. 모수적 방법에 비해 계산이 간단하며, 적용하기 쉽다.
  3. 관측값에 신뢰성이 적어 단순히 순위를 통해 검정하고 싶을 때 이용하면 좋다.


반면 비모수적 방법은 아래와 같은 단점이 있다.


  1. 모수적 방법으로 검정할 수 있는 데이터에 비모수적 방법을 이용하면, 효율성이 떨어진다.
  2. 표본의 크기가 커질 수록 비모수적 방법의 계산량은 빠르게 늘어난다.


반응형
반응형