क्लंपनेस का मानक माप?


13

मेरे पास बहुत अधिक डेटा है और मैं कुछ ऐसा करना चाहता हूं जो बहुत सरल लगता है। डेटा के इस बड़े सेट में, मुझे इस बात में दिलचस्पी है कि एक विशिष्ट तत्व एक साथ कितना जकड़ता है। मान लीजिए कि मेरा डेटा एक सेट किया गया सेट है: {A, C, B, D, A, Z, T, C ...}। मान लीजिए कि मैं जानना चाहता हूं कि क्या A का झुकाव एक-दूसरे के ठीक बगल में पाया जा सकता है, जैसा कि पूरे सेट में बेतरतीब ढंग से (या समान रूप से) वितरित होने के विपरीत है। यह वह संपत्ति है जिसे मैं "क्लंपनेस" कह रहा हूं।

अब, क्या डेटा "क्लंपनेस" का कुछ सरल माप है? यही है, कुछ आंकड़े जो मुझे बताएंगे कि असमान रूप से वितरित किए गए असमान रूप से कितने दूर हैं? और अगर ऐसा करने का कोई सरल तरीका नहीं है, तो मुश्किल रास्ता क्या होगा? किसी भी संकेत बहुत सराहना की!

जवाबों:


14

एक उदाहरण के रूप में, मान लीजिए कि आपके पास एक निर्धारित सेट है जिसमें प्रत्येक स्थिति में वर्णमाला के निचले अक्षरों में से किसी के होने की समान संभावना है। इस मामले में मैं आदेश दिया सेट में तत्व शामिल होंगे।1000

# generate a possible sequence of letters
s <- sample(x = letters, size = 1000, replace = TRUE)

यह पता चला है कि यदि सेट किए गए पदों में से प्रत्येक पदों के वर्णमाला के निचले अक्षरों पर एक समान वितरण का अनुसरण करता है, तो एक ही अक्षर की दो घटनाओं के बीच की दूरी पैरामीटर 1/26 के साथ एक ज्यामितीय वितरण का अनुसरण करती है । इस जानकारी के प्रकाश में, आइए एक ही अक्षर की निरंतर घटनाओं के बीच की दूरी की गणना करें।p=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 p=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

यहाँ छवि विवरण दर्ज करें


ऐसा लगता है कि आप शुरू में ही मान लेते हैं कि अक्षरों का वितरण प्रत्येक अक्षर के लिए समान संभावना के साथ बहुपद है। क्या होगा यदि वितरण अक्षरों के लिए असमान संभावनाओं का है? - क्या प्रत्येक अक्षर के लिए होने वाली घटनाओं के बीच दूरी का अपेक्षित वितरण अभी भी ज्यामितीय होगा? और किस पैरामीटर के साथ?
ttnphns

प्रत्येक अक्षर के लिए असमान संभावनाओं के साथ, प्रत्येक अक्षर की घटनाओं के बीच की दूरी अभी भी ज्यामितीय है। हालांकि, पैरामीटर पत्र द्वारा भिन्न होता है, और प्रत्येक अक्षर के लिए यह उस अक्षर वाले क्रमबद्ध सेट में एक स्थिति की संभावना के बराबर होता है।
९: ४

1
मुझे आपका दृष्टिकोण पसंद है। क्या यह मान लेना अधिक यथार्थवादी नहीं होगा कि प्रत्येक अक्षर की संख्या निश्चित है और सभी आदेशों के बीच समान रूप से एक आदेश दिया गया है? दुर्भाग्य से मुझे नहीं पता कि उस मामले में वितरण क्या है। कोई उपाय?
गुई ११

@ gui11aume यह एक दिलचस्प सोच है। क्या आप एक प्रकार के क्रमपरिवर्तन परीक्षण दृष्टिकोण की बात कर रहे हैं, जहां हम कई बार सेट किए गए आदेशों का पालन करते हुए देखते हैं और देखते हैं कि कुछ क्रमबद्धता का उपयोग करते हुए क्रमबद्ध सेटों के लिए मूल आदेश कैसा है?

हां, मेरे मन में यही है। फिर आप पूर्ण मिश्रण से प्रस्थान को मापने के लिए भट्टाचार्य दूरी या कुल्बैक-लीब्लर विचलन का उपयोग कर सकते हैं।
गुइयूम जुमे

7

वास्तव में आप जो वर्णन कर रहे हैं, उसे एक प्रक्रिया में कोडित किया गया है जिसे रन टेस्ट कहा जाता है। यह मास्टर के लिए जटिल नहीं है। आप इसे सांख्यिकीय परीक्षणों, जैसे, विकिपीडिया या नेटल इंस्टीट्यूट पर कई स्रोतों में पा सकते हैं मानक और प्रौद्योगिकी की या यूट्यूब


+1। @ एलान, रन टेस्ट को वाल्ड-वोल्फोवित्ज़ टेस्ट भी कहा जाता है - आपको जानने के लिए।
ttnphns

रन टेस्ट के साथ समस्या यह है कि यह केवल द्विबीजपत्री या द्विभाजित डेटा के लिए है।
ttnphns

0

यदि आप इस पर थोड़ा अलग दृष्टिकोण में रुचि रखते हैं, तो आप सूचना सिद्धांत पर एक प्राइमर को देखना पसंद कर सकते हैं - कंप्यूटिंग, छवि / वीडियो / ऑडियो प्रोसेसिंग, संचार सिद्धांत और (शायद अधिक आश्चर्यजनक रूप से) भौतिकी में रुचि के गणित का एक क्षेत्र और कॉस्मोलॉजी (ब्लैक होल, साथ ही शास्त्रीय ऊष्मप्रवैगिकी) और यहां तक ​​कि जीव विज्ञान की समझ के लिए महत्वपूर्ण है।

अनौपचारिक रूप से, हम कह सकते हैं कि अक्षरों का एक "क्लंपियर" क्रम (आपके उदाहरण के अनुसार) सामान्य प्रयोजन संपीड़न एल्गोरिदम के अधीन होने पर अधिक सघन रूप से संपीड़ित होगा - अर्थात कच्चे पाठ वाला एक ज़िप फ़ाइल छोटा होगा। इसी तरह, एक "clumpy" छवि (कहते हैं, एक सादे हरे रंग की baize पर कुछ बिलियर्ड गेंदों की) बहुत अधिक कुशलता से संपीड़ित करेगी - जैसे एक छोटी jpeg फ़ाइल बनाएं - एक अधिक विविध छवि (जैसे कि लोगों के समूह की छवि) की तुलना में )। निश्चित रूप से इस तरह के डेटा की सूचना सामग्री (उर्फ नकारात्मक एन्ट्रापी या "निगेंट्रॉपी") विशेष संपीड़न एल्गोरिदम से स्वतंत्र विभिन्न औपचारिक परिभाषाएं हैं।

ऐसे मामले का एक उदाहरण जिसमें एक सूचना-सैद्धांतिक उपाय अधिक शास्त्रीय सांख्यिकीय विश्लेषणों की तुलना में अधिक खुलासा हो सकता है, यदि आप रिज़ॉल्यूशन के कई (या सभी) स्तरों पर "क्लंपनेस" की पहचान करने में रुचि रखते हैं। आपके टेक्स्ट स्ट्रिंग के उदाहरण में, यदि अनुक्रम की शुरुआत में बहुत सारे "ए" एक साथ गुथे हुए थे, तो "ए" एस का अधिक गुच्छा नहीं है, और फिर समय-समय पर अधिक गुच्छा और कम गुच्छा होता है जैसा कि अनुक्रम जारी है, फिर अकड़न को कई प्रस्तावों पर मौजूद कहा जा सकता है - कुछ ऐसा जो प्राकृतिक रूप से सूचनात्मक उपायों द्वारा कब्जा किया जा सकता है।

(संपादित करें) यह मेरे लिए होता है कि आपकी चिंता कि यह एक हास्यास्पद सवाल हो सकता है, जब वास्तव में "clumpiness" का अध्ययन - सूचना की आड़ में और (नकारात्मक) एन्ट्रापी - vitally हमें आधुनिक जीवन के दोनों रोजमर्रा के संचालन के बारे में सूचित करता है। (इंटरनेट, मोबाइल संचार, भाषा ही) और ब्रह्मांड की प्रकृति (ब्लैक होल, आकाशगंगा गठन, कॉस्मिक बैकग्राउंड रेडिएशन की व्याख्या, यह निर्धारित करते हुए कि "जीवित" क्या है) को इस कहावत के साथ उत्तर दिया जाना चाहिए कि "कोई बेवकूफ सवाल नहीं हैं। , केवल बेवकूफ जवाब "[अनासक्त उद्धरण]।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.