1000
# generate a possible sequence of letters
s <- sample(x = letters, size = 1000, replace = TRUE)
p = 1 / 26 de
# find the distance between occurences of the same letters
d <- vector(mode = 'list', length = length(unique(letters)))
for(i in 1:length(unique(letters))) {
d[[i]] <- diff(which(s == letters[i]))
}
d.flat <- unlist(x = d)
Vejamos um histograma das distâncias entre ocorrências da mesma letra e compare-o com a função de massa de probabilidade associada à distribuição geométrica mencionada acima.
hist(x = d.flat, prob = TRUE, main = 'Histogram of Distances', xlab = 'Distance',
ylab = 'Probability')
x <- range(d.flat)
x <- x[1]:x[2]
y <- dgeom(x = x - 1, prob = 1/26)
points(x = x, y = y, pch = '.', col = 'red', cex = 2)
Os pontos vermelhos representam a função de massa de probabilidade real da distância que esperávamos se cada uma das posições do conjunto ordenado seguisse uma distribuição uniforme sobre as letras e as barras do histograma representassem a função de massa de probabilidade empírica da distância associada à ordem conjunto.
Esperamos que a imagem acima seja convincente que a distribuição geométrica seja apropriada.
p = 1 / 26 de0 0∞
Como d.flat
acima se compara à distribuição geométrica esperada em termos de Distância Bhattacharyya?
b.dist <- 0
for(i in x) {
b.dist <- b.dist + sqrt((sum(d.flat == i) / length(d.flat)) * dgeom(x = i - 1,
prob = 1/26))
}
b.dist <- -1 * log(x = b.dist)
0,0260 0
EDITAR:
0,0260 010 , 000
gen.bhat <- function(set, size) {
new.seq <- sample(x = set, size = size, replace = TRUE)
d <- vector(mode = 'list', length = length(unique(set)))
for(i in 1:length(unique(set))) {
d[[i]] <- diff(which(new.seq == set[i]))
}
d.flat <- unlist(x = d)
x <- range(d.flat)
x <- x[1]:x[2]
b.dist <- 0
for(i in x) {
b.dist <- b.dist + sqrt((sum(d.flat == i) / length(d.flat)) * dgeom(x = i -1,
prob = 1/length(unique(set))))
}
b.dist <- -1 * log(x = b.dist)
return(b.dist)
}
dist.bhat <- replicate(n = 10000, expr = gen.bhat(set = letters, size = 1000))
Agora podemos calcular a probabilidade de observar a Distância Bhattacharyya observada acima, ou mais uma, se o conjunto ordenado for gerado de tal maneira que cada uma de suas posições siga uma distribuição uniforme sobre as letras.
p <- ifelse(b.dist <= mean(dist.bhat), sum(dist.bhat <= b.dist) / length(dist.bhat),
sum(dist.bhat > b.dist) / length(dist.bhat))
0,38
0 0999
Exatamente o que você está descrevendo foi codificado em um procedimento chamado Teste de Execução. Não é complicado dominar. Você pode encontrá-lo em várias fontes em testes estatísticos, por exemplo, wikipedia ou Nat'l Instit. de Padrões e Tecnologia ou YouTube .
fonte
Se você estiver interessado em uma perspectiva um pouco diferente sobre isso, talvez queira ler uma cartilha sobre teoria da informação - uma área da matemática de interesse em computação, processamento de imagem / vídeo / áudio, teoria da comunicação e (talvez mais surpreendentemente) física e física. cosmologia (crucial para a compreensão dos buracos negros, bem como a termodinâmica clássica) e até biologia.
Informalmente, podemos dizer que uma sequência "mais grossa" de letras (como no seu exemplo) será mais densamente compactada quando submetida a um algoritmo de compressão de uso geral - ou seja, um arquivo zip contendo o texto bruto será menor. Da mesma forma, uma imagem "desajeitada" (digamos, de algumas bolas de bilhar em um feltro verde liso) comprime muito mais eficientemente - por exemplo, cria um arquivo jpeg menor - do que uma imagem mais variada (como a imagem de um grupo de pessoas ) Obviamente, o conteúdo da informação (também conhecido como entropia negativa ou "negentropy") desses dados possui várias definições formais independentes de algoritmos de compactação específicos.
Um exemplo de caso em que uma medida teórica da informação pode ser mais reveladora do que as análises estatísticas mais clássicas acima é se você estiver interessado em identificar "aglomeração" em vários (ou todos) níveis de resolução. No exemplo de sua sequência de texto, se houver muitos "A" agrupados no início da sequência, não haverá muito agrupamento de "A" e, periodicamente, mais agrupamentos e menos agrupamentos à medida que a sequência continuar, pode-se dizer que a massa existe em múltiplas resoluções - algo que pode ser capturado de maneira muito natural por medidas teóricas da informação.
(Editar) Ocorre-me que sua preocupação de que essa possa ser uma pergunta ridícula, quando, de fato, o estudo da "aglomeração" - disfarçado de informação e (neg) entropia - nos informa de forma vital sobre a operação cotidiana da vida moderna (a internet, comunicações móveis, a própria linguagem) e a natureza do universo (buracos negros, formação de galáxias, interpretação da radiação cósmica de fundo, determinando o que está "vivo") devem ser respondidas com o ditado de que "não há perguntas estúpidas , apenas respostas estúpidas "[citação não atribuída].
fonte