Angenommen, Sie haben eine geordnete Menge, in der für jede Position die gleiche Wahrscheinlichkeit besteht, dass es sich um einen der Kleinbuchstaben im Alphabet handelt. In diesem Fall werde ich das bestellte Set Elemente enthalten lassen .1000
# generate a possible sequence of letters
s <- sample(x = letters, size = 1000, replace = TRUE)
Es stellt sich heraus , dass , wenn jede der Positionen der geordneten Menge eine gleichmäßige Verteilung über die Kleinbuchstaben des Alphabets folgt, dann ist der Abstand zwischen zwei Vorkommen des gleichen Buchstaben mit dem Parameter einer geometrischen Verteilung folgt , p = 1 / 26 . Berechnen wir anhand dieser Informationen den Abstand zwischen aufeinanderfolgenden Vorkommen desselben Buchstabens.
# 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)
Schauen wir uns ein Histogramm der Abstände zwischen Vorkommen desselben Buchstabens an und vergleichen Sie es mit der Wahrscheinlichkeitsmassenfunktion, die mit der oben erwähnten geometrischen Verteilung verbunden ist.
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)
Die roten Punkte repräsentieren die tatsächliche Wahrscheinlichkeitsmassenfunktion der Entfernung, die wir erwarten würden, wenn jede der Positionen der geordneten Menge einer gleichmäßigen Verteilung über die Buchstaben folgt, und die Balken des Histogramms repräsentieren die empirische Wahrscheinlichkeitsmassenfunktion der Entfernung, die der geordneten zugeordnet ist einstellen.
Hoffentlich überzeugt das obige Bild, dass die geometrische Verteilung angemessen ist.
Auch hier würde, wenn jede Position der geordneten Menge einer gleichmäßigen Verteilung über die Buchstaben folgt, erwartet, dass der Abstand zwischen den Vorkommen desselben Buchstabens einer geometrischen Verteilung mit dem Parameter folgtp = 1/ 260∞
Wie verhält es sich d.flat
mit der erwarteten geometrischen Verteilung in Bezug auf die Bhattacharyya-Entfernung?
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
BEARBEITEN:
0,026010 , 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))
Nun können wir die Wahrscheinlichkeit berechnen, die oben beobachtete Bhattacharyya-Entfernung zu beobachten, oder ein weiteres Extrem, wenn die geordnete Menge so erzeugt wurde, dass jede ihrer Positionen einer gleichmäßigen Verteilung über die Buchstaben folgt.
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 .
0999 .
Genau das, was Sie beschreiben, wurde in einer Prozedur namens Runs Test kodifiziert. Es ist nicht kompliziert zu meistern. Sie finden es in vielen Quellen zu statistischen Tests, z. B. Wikipedia oder dem National Instit. von Standards und Technologie oder YouTube .
quelle
Wenn Sie sich für eine etwas andere Perspektive interessieren, schauen Sie sich vielleicht eine Einführung in die Informationstheorie an - ein Gebiet von Interesse für Mathematik in den Bereichen Computer, Bild- / Video- / Audioverarbeitung, Kommunikationstheorie und (vielleicht überraschender) Physik und Kosmologie (entscheidend für das Verständnis der Schwarzen Löcher sowie der klassischen Thermodynamik) und sogar Biologie.
Informell können wir sagen, dass eine "klumpigere" Folge von Buchstaben (wie in Ihrem Beispiel) dichter komprimiert wird, wenn sie einem allgemeinen Komprimierungsalgorithmus unterzogen wird - dh eine Zip-Datei mit dem Rohtext wird kleiner. In ähnlicher Weise wird ein "klumpiges" Bild (z. B. ein paar Billardkugeln auf einem einfachen grünen Köder) viel effizienter komprimiert (z. B. eine kleinere JPEG-Datei erstellen) als ein abwechslungsreicheres Bild (z. B. ein Bild einer Gruppe von Menschen) ). Natürlich hat der Informationsgehalt (auch als negative Entropie oder "Negentropie" bezeichnet) solcher Daten verschiedene formale Definitionen, die von bestimmten Kompressionsalgorithmen unabhängig sind.
Ein Beispiel für einen Fall, in dem eine informationstheoretische Messung aufschlussreicher sein könnte als die oben beschriebenen klassischen statistischen Analysen, ist das Ermitteln von "Klumpen" auf mehreren (oder allen) Auflösungsebenen. Wenn im Beispiel Ihrer Textzeichenfolge zu Beginn der Sequenz viele "A" -Elemente gebündelt waren, dann nicht viele "A" -Elemente und dann in regelmäßigen Abständen mehr und weniger Bündel, während die Sequenz fortgesetzt wird Man könnte sagen, dass die Klumpen bei mehreren Auflösungen existieren - etwas, das sehr natürlich durch informationstheoretische Maßnahmen erfasst werden kann.
(Bearbeiten) Mir fällt Ihre Besorgnis ein, dass dies eine lächerliche Frage sein könnte, obwohl das Studium der "Klumpen" - in Form von Informationen und (negativer) Entropie - uns entscheidend über die alltäglichen Abläufe des modernen Lebens informiert (Internet, Mobilfunk, Sprache selbst) und die Natur des Universums (Schwarze Löcher, Galaxienentstehung, Interpretation der kosmischen Hintergrundstrahlung, Bestimmung, was "lebendig" ist) sollten mit dem Sprichwort beantwortet werden, dass "es keine dummen Fragen gibt , nur dumme Antworten "[nicht zugeschriebenes Zitat].
quelle