Dirichlet 분포의 알파는 정확히 무엇입니까?


26

저는 베이지안 통계를 처음 접했 을 때 알고리즘의 백엔드에서 Dirichlet 프로세스를 사용 하는 수정 된 상관 측정 SparCC 를 발견했습니다. 실제로 무슨 일이 일어나고 있는지 이해하기 위해 단계별로 알고리즘을 시도했지만 alphaDirichlet 분포에서 벡터 매개 변수가 무엇을하는지 그리고 벡터 매개 변수가 어떻게 정규화되는지 확실 하지 않습니다 alpha.

구현은 https://docs.scipy.org/doc/numpy/reference/generated/numpy.random.dirichlet.htmlPython사용하고 있습니다 NumPy.

문서는 말합니다 :

alpha : array 분포의 모수 (차원 k의 샘플에 대한 k 차원)입니다.

내 질문 :

  1. 어떻게는 않는다 alphas분포에 영향을?;

  2. 어떻게 alphas정상화되고 있습니까 ?; 과

  3. alphas정수가 아닌 경우 어떻게됩니까 ?

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt

# Reproducibility
np.random.seed(0)

# Integer values for alphas
alphas = np.arange(10)
# array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9])

# Dirichlet Distribution
dd = np.random.dirichlet(alphas) 
# array([ 0.        ,  0.0175113 ,  0.00224837,  0.1041491 ,  0.1264133 ,
#         0.06936311,  0.13086698,  0.15698674,  0.13608845,  0.25637266])

# Plot
ax = pd.Series(dd).plot()
ax.set_xlabel("alpha")
ax.set_ylabel("Dirichlet Draw")

여기에 이미지 설명을 입력하십시오


6
이 배포판 의 Wikipedia 항목에 문제가 있습니까?
시안

2
사과, 나는 그것이 올바르게 말한 것 같지 않습니다. 확률 분포 / pdf / pmf가 무엇인지 이해하지만 정규화가 어떻게 진행되고 있는지 혼란 스러웠습니다. Wikipedia에서 이후의 감마 함수를 통해 정규화가 발생하는 것 같습니다 . 나는 그것이 배포판을 통한 배포라고한다고 들었고 위키피디아의 eqns에서 그것을 보는 것은 어렵다. xiα1
O.rka

1
알파를 정규화하면 분포의 평균을 얻습니다. 분포를 정규화하면 해당 분포에 대한 적분이 1과 같고 유효한 확률 분포임을 보장합니다.
Eskapp

1
Dirichlet 분포는 심플 렉스에 대한 분포이므로 유한지지 분포에 대한 분포입니다. 연속 분포에 대한 분포를 목표로하는 경우 Dirichlet 프로세스를 살펴 봐야합니다.
시안

답변:


67

디리클레 분포를 설명하는 변수의 확률 분포 변수 X 1k2 , 예컨대 각각이 X I( 0 , 1 ) Σ N = 1 X = 1 , 벡터에 의해 매개 변수화된다 양수 값의 매개 변수 α = ( α 1 , , α k ) . 매개 변수는하지 않습니다X1,,Xkxi(0,1)i=1Nxi=1α=(α1,,αk)정수 여야하며 양의 실수 여야합니다. 그것들은 어떤 식 으로든 "정규화 된"것이 아니며,이 분포의 매개 변수입니다.

Dirichlet 배포는 베타 배포 를 여러 차원으로 일반화 한 것이므로 베타 배포에 대해 배우는 것부터 시작할 수 있습니다. 베타는 랜덤 변수의 변량 분포 파라미터에 의해 파라미터 αβ . 당신이이 것을 기억 경우의 좋은 직감이 온다 복합체 이전 에 대한 이항 분포 우리는 이전에 의해 파라미터 베타 가정하면 αβ 이항 분포의 확률 변수에 대한 페이지 의 다음 사후 분포 P는X(0,1)αβαβpp또한 β ' = β + 실패 횟수로 매개 변수가 지정된 베타 분포 입니다. 따라서 성공 및 실패 의 의사 수 (정수일 필요는 없음) 로 αβ 를 생각할 수 있습니다 (확인α=α+number of successesβ=β+number of failuresαβ 이 스레드 ).

Dirichlet 분포의 경우 다항 분포에 대한 공액 입니다. 이항 분포의 경우 우리는 항아리에서 대체로 흰색과 검은 색 볼을 그리는 관점에서 그것을 생각할 수 있다면, 다항식 분포의 경우 우리는 대체 N 볼을 k 색상으로 나타나는 대체 색 볼로 그립니다. 공의 확률은 확률 p 1 , , p k 로 그릴 수 있습니다 . Dirichlet 분포는 p 1 , , p k 확률 및 α 1 이전의 켤레입니다.Nkp1,,pkp1,,pk는 베타 이항 모델의 경우와 유사한 방식으로와 같이. 모수는각 색상의 볼의의사 카운트선험적으로가정 된 것으로 간주될 수 있습니다(그러나그러한 추론함정에대해서도 읽어야합니다). Dirichlet- 다항식 모델 α 1 , , α k 는 각 카테고리의 관측 카운트로 그것들을 합산하여 업데이트됩니다 : α 1 + n 1 , , α k + n kα1,,αkα1,,αkα1+n1,,αk+nk

더 높은 가치 X i 의 "무게"가커지고 총 "질량"의 양이 더 많이 할당됩니다 (총 x 1 + + x k = 1 이어야 함). 모든 α i 가 동일하면 분포가 대칭입니다. 경우 α I < 1 ,이를 방지 중량으로 간주 될 수있는 푸쉬 떨어져 있음 X 난을 가 높을 때, 끌어하면서, 극단 방향 X 나을 모든 점 주위에 집중되어 있다는 점에서 중앙 일부 중앙값 향해을 (되지αiXix1++xk=1αiαi<1xixi대칭 중심이라는 의미에서). 만약 , 다음 포인트가 균일하게 분포되어있다.α1==αk=1

아래 그림에서 볼 수 있습니다. 여기서 3 변량 Dirichlet 분포를 볼 수 있습니다 (불행히도 최대 3 차원까지 합리적인 그림을 생성 할 수 있음). (a) α1=α2=α3=1 , (b) , (c) α 1 = 1 , α 2 = 10 , α 3 = 5 , (d) α 1 = α 2 = α =α1=α2=α3=10α1=1,α2=10,α3=5 .α1=α2=α3=0.2

Four different samples from Dirichlet distributions

Dirichlet 분포는 확률 분포 자체로 생각할 수 있기 때문에 때때로 "분포에 대한 분포" 라고도 합니다. 각 k i = 1 x i = 1 이므로 x i 는 확률 의 첫 번째 및 두 번째 공리 와 일치합니다 . 따라서 Dirichlet 분포를 categorical 또는 multinomial 과 같은 분포로 설명 된 불연속 사건에 대한 확률 분포로 사용할 수 있습니다 . 그것은xi(0,1)i=1kxi=1xi 것은예를 들어 연속 랜덤 변수의 확률 또는 일부 불연속 변수와 관련이없는 분포와 같은 분포에 대한 분포라는 사실입니다 (예 : 포아송 분산 랜덤 변수는 자연수 값을 관찰하는 확률을 설명하므로 확률에 대한 디 리클 렛 분포에는 무한한 수의 랜덤 변수 ) 가 필요합니다 .k


2
놀라운 설명
O.rka

14

면책 조항 : 나는이 배포판을 전에 사용한 적이 없습니다. 이 답변은 위키 백과 기사와 이에 대한 나의 해석을 바탕으로 합니다.


Dirichlet 분포는 Beta 분포와 유사한 특성을 갖는 다변량 확률 분포입니다.

PDF는 다음과 같이 정의됩니다.

{x1,,xK}1B(α)i=1Kxiαi1

으로 , XK2 Σ K = 1 X = 1xi(0,1)i=1Kxi=1 .

밀접하게 관련된 베타 배포판을 보면 :

{x1,x2(=1x1)}1B(α,β)x1α1x2β1

경우이 두 분포가 동일하다는 것을 알 수 있습니다 . 먼저 그 해석에 기초한 다음 K > 2 로 일반화합시다 .K=2K>2


베이지안 통계에서 베타 분포는 이항 모수에 대한 결합체로 사용됩니다 ( 베타 분포 참조 ). 사전은 β 에 대한 사전 지식으로 정의 될 수 있습니다 (또는 Dirichlet 분포 α 1α 2에 따라 ). 일부 이항 시행에 A 성공 및 B 실패가있는 경우 사후 분포는 다음과 같습니다. α 1 , p o s = α 1 + Aα 2 , p o s = ααβα1α2ABα1,pos=α1+A . (이것은 아마 베이지안 통계로 배우는 첫 번째 것 중 하나 이므로이 작업을 수행하지 않습니다).α2,pos=α2+B

따라서 베타 분포는 x 2 ( = 1 x 1 ) 에 대한 사후 분포를 나타내며 , 이항 분포에서 각각 성공 확률과 실패 확률로 해석 할 수 있습니다. 더 많은 데이터 ( AB )를 가질수록이 사후 분포는 더 좁아집니다.x1x2(=1x1)AB


이제 우리는 대한 분포가 어떻게 작동하는지 알고 , 이항식 대신 다항 분포에 대해 작동하도록 일반화 할 수 있습니다. 이는 두 가지 가능한 결과 (성공 또는 실패) 대신 K 결과 를 허용 함을 의미합니다 ( K = 2 인 경우 베타 / 비놈으로 일반화되는 이유 참조 ). 이러한 K 결과 각각 에는 확률 x i가 있으며 확률은 1입니다.K=2KK=2Kxi

그런 다음 α i x i 이전의 베타 분포에서 α 1 α 2 와유사한 역할을 수행하며 유사한 방식으로 업데이트됩니다.αiα1α2xi

이제 질문을 받으십시오.

어떻게는 않는다 alphas분포에 영향을 줍니까?

분포는 제한 K i = 1 x i = 1에 의해 제한 됩니다. α 의 부분을 결정 K 차원 공간이 가장 질량을 얻을. 이 이미지 에서 볼 수 있습니다 (사진이 없기 때문에 여기에 포함하지 않음). 사후에 데이터가 많을수록 (해석을 사용하여) K i = 1 α i 가 높아질수록 x i 값이 더 확실합니다xi(0,1)i=1Kxi=1αiKi=1Kαixi또는 각 결과에 대한 확률. 이것은 밀도가 더 집중 될 것임을 의미합니다.

상태는 어떻게 alphas정상화되고 있습니까?

분포의 정규화 (적분이 1인지 확인)는 항을 통과합니다 .B(α)

B(α)=i=1KΓ(αi)Γ(i=1Kαi)

의 경우를 다시 살펴보면 정규화 요소가 베타 분포와 동일하다는 것을 알 수 있습니다.K=2

B(α1,α2)=Γ(α1)Γ(α2)Γ(α1+α2)

이것은 확장

B(α)=Γ(α1)Γ(α2)Γ(αK)Γ(α1+α2++αK)

알파가 정수가 아닌 경우 어떻게됩니까?

대한 해석은 변경되지 않지만 이전연결된 이미지에서 알 수 있듯이 α i < 1 인 경우 분포 질량은 x i 범위의 가장자리에 누적됩니다.αi>1αi<1xi . 다른 한편으로는 정수이어야 K 2 .KK2


1
고마워 당신의 설명은 매우 유용했습니다. 둘 다 올바른 것으로 표시 할 수 있기를 바랍니다.
O.rka
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.