एक उदाहरण के रूप में, मान लीजिए कि आपके पास एक निर्धारित सेट है जिसमें प्रत्येक स्थिति में वर्णमाला के निचले अक्षरों में से किसी के होने की समान संभावना है। इस मामले में मैं आदेश दिया सेट में तत्व शामिल होंगे।1000
# generate a possible sequence of letters
s <- sample(x = letters, size = 1000, replace = TRUE)
यह पता चला है कि यदि सेट किए गए पदों में से प्रत्येक पदों के वर्णमाला के निचले अक्षरों पर एक समान वितरण का अनुसरण करता है, तो एक ही अक्षर की दो घटनाओं के बीच की दूरी पैरामीटर 1/26 के साथ एक ज्यामितीय वितरण का अनुसरण करती है । इस जानकारी के प्रकाश में, आइए एक ही अक्षर की निरंतर घटनाओं के बीच की दूरी की गणना करें।पी = 1 / 26
# 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)
आइए एक ही अक्षर की घटनाओं के बीच की दूरी के एक हिस्टोग्राम को देखें और इसकी तुलना ऊपर बताए गए ज्यामितीय वितरण से जुड़े संभाव्यता द्रव्यमान समारोह से करें।
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)
लाल बिंदु उस दूरी की वास्तविक संभाव्यता द्रव्यमान क्रिया का प्रतिनिधित्व करते हैं, जिसकी हम अपेक्षा करते हैं कि यदि सेट किए गए पदों में से प्रत्येक अक्षर के ऊपर एक समान वितरण का पालन करता है और हिस्टोग्राम के बार क्रम से संबंधित दूरी के अनुभवजन्य संभाव्यता द्रव्यमान समारोह का प्रतिनिधित्व करते हैं। सेट।
उम्मीद है कि ऊपर दी गई छवि यह बता रही है कि ज्यामितीय वितरण उचित है।
फिर से, यदि निर्धारित सेट की प्रत्येक स्थिति अक्षरों के ऊपर एक समान वितरण का अनुसरण करती है, तो हम पैरामीटर 1/26 के साथ ज्यामितीय वितरण का पालन करने के लिए समान पत्र की घटनाओं के बीच की दूरी की अपेक्षा करेंगे । तो अंतरों के अपेक्षित वितरण और अंतरों के अनुभवजन्य वितरण के समान कैसे हैं? भट्टाचार्य दूरी दो असतत वितरण के बीच है जब वितरण बिल्कुल वैसा ही कर रहे हैं और आदत के रूप में वितरण तेजी से अलग हो जाते हैं।0 ∞पी = 1 / 260∞
d.flat
ऊपर से भट्टाचार्य दूरी के संदर्भ में अपेक्षित ज्यामितीय वितरण की तुलना कैसे करता है?
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 10 , 0000.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))
अब हम ऊपर दी गई भट्टाचार्य दूरी का अवलोकन करने की संभावना की गणना कर सकते हैं, या एक और अधिक चरम, यदि आदेशित सेट को इस तरह से उत्पन्न किया गया था कि इसके प्रत्येक स्थान पर अक्षरों का एक समान वितरण होता है।
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
पूर्णता के लिए, निम्न छवि सिम्युलेटेड भट्टाचार्य डिस्टेंस का हिस्टोग्राम है। मुझे लगता है कि यह महसूस करना महत्वपूर्ण है कि आप कभी भी भट्टाचार्य की दूरी का निरीक्षण नहीं करेंगे क्योंकि निर्धारित सेट की लंबाई सीमित है। ऊपर, किसी भी पत्र के दो घटनाओं के बीच अधिकतम दूरी अधिकतम ।9990999