Sou bastante novo nas estatísticas bayesianas e me deparei com uma medida de correlação corrigida, SparCC , que usa o processo Dirichlet no backend de seu algoritmo. Eu tenho tentado percorrer o algoritmo passo a passo para realmente entender o que está acontecendo, mas não sei exatamente o que o alpha
parâmetro vetorial faz em uma distribuição Dirichlet e como ele normaliza o alpha
parâmetro vetorial.
A implementação está em Python
uso NumPy
:
https://docs.scipy.org/doc/numpy/reference/generated/numpy.random.dirichlet.html
Os documentos dizem:
alpha: array Parâmetro da distribuição (dimensão k para amostra da dimensão k).
Minhas perguntas:
Como isso
alphas
afeta a distribuição ?;Como estão
alphas
sendo normalizados ?; eO que acontece quando
alphas
não são números inteiros?
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")
Respostas:
A distribuição de Dirichlet é uma distribuição de probabilidade multivariada que descreve variáveis X 1 , … , X k , de modo que cada x i ∈ ( 0 , 1 ) e ∑ N i = 1 x i = 1 , que é parametrizado por um vetor de parâmetros com valor positivo α = ( α 1 , … , α k ) . Os parâmetros nãok≥2 X1,…,Xk xi∈(0,1) ∑Ni=1xi=1 α=(α1,…,αk) tem que ser números inteiros, eles só precisam ser números reais positivos. Eles não são "normalizados" de forma alguma, são parâmetros dessa distribuição.
A distribuição Dirichlet é uma generalização da distribuição beta em várias dimensões, para que você possa começar aprendendo sobre a distribuição beta. Beta é uma distribuição univariada de uma variável aleatória parametrizada pelos parâmetros α e β . A boa intuição sobre isso ocorre se você se lembrar de que é um conjugado anterior para a distribuição binomial e se assumirmos um beta anterior parametrizado por α e β para o parâmetro de probabilidade p da distribuição binomial , a distribuição posterior deX∈(0,1) α β α β p p também é uma distribuição beta parametrizada por e β ′ = β + número de falhas . Portanto, você pode pensar em α e β como em pseudocontagens (eles não precisam ser inteiros) de sucessos e falhas (verifique também este encadeamento ).α′=α+number of successes β′=β+number of failures α β
No caso da distribuição Dirichlet, é um conjugado anterior para a distribuição multinomial . Se, no caso da distribuição binomial, podemos pensar em termos de desenhar bolas brancas e pretas com substituição da urna, então, no caso da distribuição multinomial, estamos desenhando com bolas substituição que aparecem em k cores, onde cada uma das cores das bolas podem ser sacadas com probabilidades p 1 , … , p k . A distribuição de Dirichlet é um conjugado anterior para p 1 , … , p k probabilidades e α 1N k p1,…,pk p1,…,pk parâmetros α k podem ser considerados comopseudocontagensde bolas de cada cor assumidasa priori(mas você deve ler também sobre asarmadilhas desse raciocínio). No modelo Dirichlet-multinomial α 1 , … , α k é atualizado somando-os com as contagens observadas em cada categoria: α 1 + n 1 , … , α k + n k de maneira semelhante à do modelo beta-binomial.α1,…,αk α1,…,αk α1+n1,…,αk+nk
O valor mais alto de , o maior "peso" de X i e a maior quantidade de "massa" total são atribuídos a ele (lembre-se de que no total ele deve ser x 1 + ⋯ + x k = 1 ). Se todos os α i são iguais, a distribuição é simétrica. Se α i < 1 , pode ser pensado como anti-peso que empurra x i para extremos, enquanto quando é alto, atrai x i para algum valor central (central no sentido de que todos os pontos estão concentrados em torno dele, nãoαi Xi x1+⋯+xk=1 αi αi<1 xi xi no sentido em que é simetricamente central). Se , então os pontos são distribuídos uniformemente.α1=⋯=αk=1
Isso pode ser visto nas plotagens abaixo, onde é possível ver distribuições triviais de Dirichlet (infelizmente, podemos produzir plotagens razoáveis apenas até três dimensões) parametrizadas por (a) , (b) α 1 = α 2 = α 3 = 10 , (c) α 1 = 1 , α 2 = 10 , α 3 = 5 , (d) α 1 = α 2 = α 3α1=α2=α3=1 α1=α2=α3=10 α1=1,α2=10,α3=5 .α1=α2=α3=0.2
A distribuição de Dirichlet às vezes é chamada de "distribuição sobre distribuições" , pois pode ser pensada como uma distribuição de probabilidades. Observe que, uma vez que cada e ∑ k i = 1 x i = 1 , x i são consistentes com o primeiro e o segundo axiomas de probabilidade . Portanto, você pode usar a distribuição Dirichlet como uma distribuição de probabilidades para eventos discretos descritos por distribuições como categorias categóricas e nãoxi∈(0,1) ∑ki=1xi=1 xi ou multinomial . Isto éverdade que é uma distribuição sobre quaisquer distribuições, por exemplo, não está relacionada a probabilidades de variáveis aleatórias contínuas ou mesmo a algumas discretas (por exemplo, uma variável aleatória distribuída de Poisson descreve probabilidades de observar valores que são números naturais, portanto, use Para distribuir diretórios por suas probabilidades, você precisará de um número infinito de variáveis aleatórias ).k
fonte
Disclaimer: Eu nunca trabalhei com esta distribuição antes. Esta resposta é baseada neste artigo da Wikipedia e na minha interpretação.
A distribuição Dirichlet é uma distribuição de probabilidade multivariada com propriedades semelhantes à distribuição Beta.
O PDF é definido da seguinte forma:
com , x i ∈ ( 0 , 1 ) e ∑ K i = 1 x i = 1 .K≥2 xi∈(0,1) ∑Ki=1xi=1
Se olharmos para a distribuição Beta intimamente relacionada:
podemos ver que essas duas distribuições são iguais se . Então, vamos basear nossa interpretação nisso primeiro e depois generalizar para K > 2 .K=2 K>2
Nas estatísticas bayesianas, a distribuição Beta é usada como um conjugado antes dos parâmetros binomiais (consulte Distribuição Beta ). O prior pode ser definido como algum conhecimento prévio sobre e β (ou de acordo com a distribuição de Dirichlet α 1 e α 2 ). Se algum teste binomial tiver sucessos A e falhas B , a distribuição posterior será a seguinte: α 1 , p o s = α 1 + A e α 2 , p o s = αα β α1 α2 A B α1,pos=α1+A . (Não vou resolver isso, pois essa é provavelmente uma das primeiras coisas que você aprende com as estatísticas bayesianas).α2,pos=α2+B
Portanto, a distribuição Beta representa alguma distribuição posterior em e x 2 ( = 1 - x 1 ) , que pode ser interpretada como a probabilidade de sucessos e falhas, respectivamente, em uma distribuição binomial. E quanto mais dados ( A e B ) você tiver, mais estreita será a distribuição posterior.x1 x2(=1−x1) A B
Agora que sabemos como a distribuição funciona para , podemos generalizá-la para trabalhar para uma distribuição multinomial em vez de um binomial. O que significa que, em vez de dois resultados possíveis (sucesso ou fracasso), permitiremos resultados K (veja por que ele se generaliza para Beta / Binom se K = 2 ?). Cada um destes K resultados terá uma probabilidade x i , que resume a 1 como probabilidades fazer.K=2 K K=2 K xi
, em seguida, assume um papel semelhante ao α 1 e α 2 na distribuição Beta como uma prévia para x i e é atualizado de forma semelhante.αi α1 α2 xi
Então agora, para responder às suas perguntas:
Isso se estende a
The interpretation doesn't change forαi>1 , but as you can see in the image I linked before, if αi<1 the mass of the distribution accumulates at the edges of the range for xi . K on the other hand has to be an integer and K≥2 .
fonte