कैसे बेतुके बड़े Z- स्कोर के साथ जुड़े संभावना की गणना करने के लिए?


14

नेटवर्क मोटिफ डिटेक्शन के लिए सॉफ्टवेयर पैकेज अत्यधिक उच्च Z- स्कोर लौटा सकते हैं (मैंने जो सबसे अधिक 600,000+ देखा है, लेकिन 100 से अधिक के Z- स्कोर काफी सामान्य हैं)। मैं यह दिखाने की योजना बना रहा हूं कि ये जेड-स्कोर फर्जी हैं।

विशाल जेड-स्कोर बहुत कम संबद्ध संभावनाओं के अनुरूप हैं। संबंधित संभावनाओं के मूल्यों को सामान्य वितरण विकिपीडिया पृष्ठ (और शायद हर आंकड़े पाठ्यपुस्तक) पर दिए गए हैं। जेड-स्कोर के लिए 6. तक ...

प्रश्न : त्रुटि फ़ंक्शन 1 - e r f ( n / comp) कैसे गणना करता है1erf(n/2)एन अप करने के लिए 1,000,000, कहते हैं?

मैं विशेष रूप से इसके लिए पहले से ही लागू पैकेज के बाद हूं (यदि संभव हो तो)। अब तक मैंने जो सबसे अच्छा पाया है वो है वोल्फ्रमअल्फा, जो इसे n = 150 ( यहाँ ) के लिए गणना करने का प्रबंधन करता है ।


6
शायद यह पूछने का सही सवाल नहीं है। ये z- स्कोर बोगस हैं क्योंकि वे मानते हैं कि सामान्य वितरण वास्तव में है की तुलना में कहीं बेहतर सन्निकटन या मॉडल है। यह थोड़ा सा लगता है जैसे न्यूटनियन यांत्रिकी 600,000 दशमलव स्थानों के लिए अच्छा है। यदि आप वास्तव में चरम मूल्यों के लिए कंप्यूटिंग इरफ में पूरी तरह से रुचि रखते हैं n, तो यह प्रश्न math.SE पर है, यहां नहीं।
whuber

6
Pr(Z>z)(z2π)1ez2/2

धन्यवाद कार्डिनल, यह बाध्य काफी सटीक प्रतीत होता है। आप इसे उत्तर क्यों नहीं बनाते?
डगलस एस। स्टोन्स

@ डगलस: यदि आप अभी भी रुचि रखते हैं, तो मैं अगले दिन एक साथ कुछ डाल सकता हूं और इसे अधिक पूर्ण उत्तर के रूप में पोस्ट कर सकता हूं।
कार्डिनल

1
खैर ... मुझे लगता है कि यह एक जवाब के रूप में इसे जोड़ना सार्थक होगा। शायद बाउंड प्रो + स्टैट्स में सामान्य ज्ञान है, लेकिन मुझे यह नहीं पता था। इसके अलावा, क्यू और ए यहां पूरी तरह से ओपी के लिए नहीं हैं।
डगलस एस। स्टोन्स

जवाबों:


19

प्रश्न पूरक त्रुटि फ़ंक्शन की चिंता करता है

erfc(x)=2πxexp(t2)dt

मूल प्रश्न में ( के "बड़े" मानों के लिए ) - अर्थात्, 100 और 700,000 या तो के बीच। (व्यवहार में, लगभग 6 से अधिक किसी भी मूल्य को "बड़ा" माना जाना चाहिए, जैसा कि हम देखेंगे।) ध्यान दें कि इसका उपयोग पी-मानों की गणना करने के लिए किया जाएगा, तीन से अधिक महत्वपूर्ण (दशमलव) अंक प्राप्त करने में बहुत कम मूल्य है। ।x=n/2

शुरू करने के लिए, @Iterator द्वारा सुझाए गए अनुमान पर विचार करें,

f(x)=11exp(x2(4+ax2π+ax2)),

कहाँ पे

a=8(π3)3(4π)0.439862.

यद्यपि यह त्रुटि फ़ंक्शन के लिए एक उत्कृष्ट सन्निकटन है, यह लिए एक भयानक सन्निकटन है । हालांकि, इसे व्यवस्थित रूप से ठीक करने का एक तरीका है।erfc

इतने बड़े मूल्यों से जुड़े पी-मानों के लिए , हम सापेक्ष त्रुटि में रुचि रखते हैं : हमें उम्मीद है कि इसका महत्वपूर्ण मान तीन महत्वपूर्ण के लिए 0.001 से कम होगा। परिशुद्धता के अंक। दुर्भाग्य से यह अभिव्यक्ति डबल-सटीक संगणना में अंडरफ्लो के कारण बड़े के लिए अध्ययन करना मुश्किल है । यहाँ एक प्रयास है, जो लिए के सापेक्ष त्रुटि प्लॉट करता है :x f(x)/erfc(x)1xx0x5.8

प्लॉट 1

एक बार 5.3 से अधिक हो जाने पर गणना अस्थिर हो जाती है और 5.8 से एक महत्वपूर्ण अंक नहीं दे सकता है। यह कोई आश्चर्य की बात नहीं है: दोहरे-सटीक अंकगणित की सीमाओं को आगे बढ़ा रहा है। क्योंकि इस बात का कोई सबूत नहीं है कि सापेक्ष त्रुटि बड़े लिए स्वीकार्य रूप से छोटी होने वाली है , हमें बेहतर करने की आवश्यकता है।xexp(5.82)1014.6x

विस्तारित अंकगणित ( गणितज्ञ के साथ ) में गणना करने से जो कुछ भी हो रहा है, उसके बारे में हमारी तस्वीर में सुधार होता है:

प्लॉट २

साथ त्रुटि तेजी से बढ़ती है और लेवलिंग के कोई संकेत नहीं दिखाती है। विगत या तो, यह सन्निकटन जानकारी के एक विश्वसनीय अंक भी नहीं देता है!xx=10

हालांकि, प्लॉट रैखिक दिखने लगा है। हम अनुमान लगा सकते हैं कि सापेक्ष त्रुटि सीधे आनुपातिक है । (यह सैद्धांतिक आधार पर समझ में आता है: स्पष्ट रूप से एक विषम कार्य है और भी प्रकट रूप से है, इसलिए उनका अनुपात एक विषम कार्य होना चाहिए। इस प्रकार हम सापेक्ष त्रुटि की उम्मीद करेंगे, अगर यह बढ़ जाता है, तो इस तरह का व्यवहार करने के लिए। की विषम शक्ति ।) इससे हमें द्वारा विभाजित सापेक्ष त्रुटि का अध्ययन करना पड़ता है । समान रूप से, मैं जांच करना चुनता हूं , क्योंकि आशा है कि यह एक निरंतर सीमित मूल्य होना चाहिए। यहाँ इसका ग्राफ दिया गया है:xerfcfx xxerfc(x)/f(x)

प्लॉट 3

हमारा अनुमान यह प्रतीत होता है: यह अनुपात 8 या इसके आसपास की सीमा के निकट प्रतीत होता है। पूछे जाने पर, गणितज्ञ इसकी आपूर्ति करेगा:

a1 = Limit[x (Erfc[x]/f[x]), x -> \[Infinity]]

मान । यह हमें अनुमान में सुधार करने में सक्षम बनाता है: हम लेते हैंa1=2πe3(4+π)28(3+π)7.94325

f1(x)=f(x)a1x

सन्निकटन के पहले शोधन के रूप में। जब वास्तव में बड़ा है - कुछ हज़ार से अधिक - यह सन्निकटन ठीक है। क्योंकि और बीच के तर्कों की एक दिलचस्प श्रृंखला के लिए यह अभी भी काफी अच्छा नहीं होने जा रहा है , इसलिए प्रक्रिया को पुनरावृत्त करें। इस बार, व्युत्क्रम सापेक्ष त्रुटि - विशेष रूप से, अभिव्यक्ति --should बड़े लिए तरह व्यवहार करता है (पिछले समानता के गुणों से) । तदनुसार, हम गुणा करते हैं और अगली सीमा पाते हैं:x5.320001erfc(x)/f1(x)1/x2xx2

a2 = Limit[x^2 (a1 - x (Erfc[x]/f[x])), x -> \[Infinity]] 

मान है

a2=132πe3(4+π)28(3+π)(329(4+π)3π(3+π)2)114.687.

जब तक हम चाहें यह प्रक्रिया आगे बढ़ सकती है। मैंने इसे ढूंढते हुए एक और कदम उठाया

a3 = Limit[x^2 (a2 - x^2 (a1 - x (Erfc[x]/f[x]))), x -> \[Infinity]] 

लगभग 1623.67 मूल्य के साथ। (पूर्ण अभिव्यक्ति में का डिग्री-आठ तर्कसंगत फ़ंक्शन शामिल है और यहां उपयोगी होने के लिए बहुत लंबा है।)π

इन ऑपरेशनों को अंजाम देने से हमारा अंतिम अनुमान निकलता है

f3(x)=f(x)(a1a2/x2+a3/x4)/x.

त्रुटि आनुपातिक है । आयात का अनुपात आनुपातिकता है, इसलिए हम :x6x6(1erfc(x)/f3(x))

प्लॉट 4

यह तेजी से 2660.59 के आसपास एक सीमित मूल्य पर पहुंचता है। सन्निकटन का उपयोग करते , हम अनुमान प्राप्त , जिनकी सापेक्ष सटीकता सभी लिए से बेहतर है । एक बार जब 20 से अधिक हो जाता है, तो हमारे पास हमारे तीन महत्वपूर्ण अंक होते हैं (या इससे भी अधिक, जैसा कि बड़ा होता है)। एक जाँच के रूप में, यहाँ और बीच के सन्निकटन के सही मानों की तुलना करने वाली एक तालिका है :f3erfc(x)2661/x6x>0xxx1020

 x  Erfc    Approximation      
10  2.088*10^-45    2.094*10^-45
11  1.441*10^-54    1.443*10^-54
12  1.356*10^-64    1.357*10^-64
13  1.740*10^-75    1.741*10^-75
14  3.037*10^-87    3.038*10^-87
15  7.213*10^-100   7.215*10^-100
16  2.328*10^-113   2.329*10^-113
17  1.021*10^-127   1.021*10^-127
18  6.082*10^-143   6.083*10^-143
19  4.918*10^-159   4.918*10^-159
20  5.396*10^-176   5.396*10^-176

वास्तव में, यह सन्निकटन लिए परिशुद्धता के कम से कम दो महत्वपूर्ण आंकड़े प्रदान करता है, जो कि बस के बारे में है जहां पैदल यात्री गणना (जैसे एक्सेल के कार्य) के बारे में बताते हैं।x=8NormSDist

अंत में, किसी को प्रारंभिक सन्निकटन गणना करने की हमारी क्षमता के बारे में चिंता हो सकती है । हालांकि, यह मुश्किल नहीं है: जब घातीय में अंडरफ्लोज़ पैदा करने के लिए पर्याप्त बड़ा होता है, तो स्क्वायर रूट अच्छी तरह से आधा घातीय द्वारा अनुमानित होता है,fx

f(x)12exp(x2(4+ax2π+ax2)).

इस (10 बेस में) के लघुगणक की गणना सरल है, और आसानी से वांछित परिणाम देता है। उदाहरण के लिए, । इस सन्निकटन का सामान्य लघुगणक हैx=1000

log10(f(x))(10002(4+a10002π+a10002)log(2))/log(10)434295.63047.

पैदावार की पैदावार

f(1000)2.3416910434296.

सुधार लागू करना ( ) पैदा करता हैf3

erfc(1000)1.86003 70486 3232810434298.

ध्यान दें कि सुधार मूल सन्निकटन को 99% से अधिक कम कर देता है (और वास्तव में, ।) (यह सन्निकटन सही मान से केवल अंतिम अंक में भिन्न होता है। एक और सुविख्यात सन्निकटन, , छठे महत्वपूर्ण अंक में बराबर होता है । मुझे यकीन है कि हम उस एक को भी सुधार सकते हैं, अगर हम भी। चाहता था, उसी तकनीकों का उपयोग कर।)a1/x1%exp(x2)/(xπ)1.86003810434298


1
+1 यह एक महान जवाब है, किसी भी तरह मैं पहले कभी इस धागे के पार नहीं आया हूं।
अमीबा का कहना है कि मोनिका

15

एक साधारण ऊपरी सीमा

एक सामान्य, उत्कृष्ट सीमा की ऊपरी पूंछ की संभावना की गणना में तर्क के बहुत बड़े मूल्यों के लिए, संभवतः उतना ही अच्छा होता है, जितना कि किसी भी अन्य तरीकों का उपयोग डबल-सटीक फ़्लोटिंग पॉइंट के साथ किया जाएगा। के लिए , चलो जहां मानक सामान्य पीडीएफ है। मैंने उत्तरजीविता विश्लेषण में मानक संकेतन के संबंध में संकेतन का उपयोग किया है। इंजीनियरिंग संदर्भों में, वे इस फ़ंक्शन को -function कहते हैं और इसे द्वारा निरूपित करते हैं ।z>0

S(z):=P(Z>z)=zφ(z)dz,
φ(z)=(2π)1/2ez2/2S(z)QQ(z)

फिर, एक बहुत ही सरल, प्राथमिक ऊपरी सीमा जहाँ दायीं ओर का अंकन इंगित करता है कि यह ऊपरी सीमा का अनुमान है। यह उत्तर बद्ध का प्रमाण देता है।

S(z)φ(z)z=:S^u(z),

कई अच्छे पूरक कम सीमाएँ भी हैं। सबसे आसान और प्राप्त करने में सबसे आसान है बाध्य इस बाउंड को प्राप्त करने के लिए कम से कम तीन अलग-अलग तरीके हैं। इस तरह की एक विधि का एक मोटा स्केच इस संबंधित प्रश्न के उत्तर में पाया जा सकता है ।

S(z)zz2+1φ(z)=:S^(z).

एक चित्र

नीचे वास्तविक फ़ंक्शन के साथ दो सीमा (ग्रे में) का एक प्लॉट है ।S(z)

सामान्य और सीमा की ऊपरी पूंछ

कितना अच्छा है?

कथानक से, ऐसा लगता है कि मामूली बड़े लिए भी सीमा काफी तंग हो गई है । हम खुद से पूछ सकते हैं कि वे कितने तंग हैं और उस संबंध में किस तरह का मात्रात्मक बयान दिया जा सकता है।z

तंगी का एक उपयोगी उपाय पूर्ण सापेक्ष त्रुटि है यह आपको अनुमान की आनुपातिक त्रुटि देता है।

E(z)=|S^u(z)S(z)S(z)|.

अब, ध्यान दें कि, चूंकि सभी शामिल कार्य nonnegative हैं, इसलिए और के बाउंडिंग गुणों का उपयोग करके , हम और इसलिए यह एक प्रमाण प्रदान करता है उस के लिए ऊपरी बाध्य 1% के भीतर करने के लिए सही है, के लिए यह सही 0.1% के भीतर और के लिए करने के लिए है यह 0.01% के भीतर करने के लिए सही है।S^u(z)S^(z)

E(z)=S^u(z)S(z)S(z)S^u(z)S^(z)S^(z)=z2,
z10z28z100

वास्तव में, सीमा का सरल रूप अन्य "सन्निकटन" पर एक अच्छी जांच प्रदान करता है। यदि, अधिक जटिल सन्निकटन की संख्यात्मक गणना में, हमें इन सीमाओं के बाहर एक मूल्य मिलता है, तो हम यहाँ प्रदान की गई ऊपरी सीमा का मान लेने के लिए इसे "सही" कर सकते हैं।

इन सीमाओं के कई शोधन हैं। लाप्लास सीमा का उल्लेख यहाँ पर ऊपरी और निचले सीमा से एक अच्छा अनुक्रम प्रदान फार्म के जहां एक तर्कसंगत कार्य है।S(z)R(z)φ(z)R(z)

अंत में, यहाँ एक और कुछ संबंधित सवाल और जवाब है।


1
सभी "स्व-उद्धरण" के लिए क्षमा याचना। एक बार, कई साल पहले, मैंने संबंधित प्रश्नों में गहन, दो-सप्ताह की लंबी रुचि ली और इस विषय के बारे में जितना संभव हो उतना सीखने की कोशिश की।
कार्डिनल

+1 व्हीबर से सहमत। बहुत अच्छा, और मैं अन्य उत्तरों के लिंक की सराहना करता हूं।
Iterator

5

आप इसे अधिक सरल कार्यों के साथ अनुमानित कर सकते हैं - अधिक जानकारी के लिए इस विकिपीडिया अनुभाग को देखें। मूल सन्निकटन यह है किerf(x)sgn(x)1exp(x24/π+ax21+ax2)

लेख में उस अनुभाग के लिए एक गलत लिंक है। पीडीएफ संदर्भित सर्गेई विन्जिट्की की फाइलों में पाया जा सकता है - या इस लिंक पर


1
इसका कुछ प्रवर्धन दो कारणों से स्वागत योग्य होगा। सबसे पहले, यह सबसे अच्छा है जब उत्तर अकेले खड़े हो सकते हैं। दूसरा, वह लेख अस्पष्ट रूप से "अनंत के एक पड़ोस में" की गुणवत्ता के बारे में अस्पष्टता से लिखता है: "कितना सही" है? (आप स्पष्ट रूप से इसका एक अच्छा अर्थ है, लेकिन यह सभी इच्छुक पाठकों के लिए बहुत कुछ है।) ".00035" का घोषित मूल्य यहां बेकार है।
व्हिबर

धन्यवाद। मैंने यह नहीं देखा कि TeX का उपयोग करने के लिए जावास्क्रिप्ट-आधारित समर्थन था, जिसने इसे लिखने में अंतर किया।
आइटरेटर

1
संयोग से, उस सन्निकटन का विकिपीडिया संदर्भ टूट गया है। हालांकि, गणितज्ञ पाता है कि सापेक्ष त्रुटि (1 - लगभग (x) / erf (x)) के पारस्परिक व्यवहार की तरह है। । 2exp(x2+3(π4)2/(8(π3)))
whuber

क्या आप इसके लिए मैथेमेटिका कोड पोस्ट कर सकते हैं? :) मैंने 15+ वर्षों में गणितज्ञ नहीं देखा है, और इस तरह के उद्देश्य के लिए कभी नहीं।
२:१५

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