गौसियन कोप्युला से अनुकरण करने के लिए एक बहुत ही सरल विधि है जो बहुभिन्नरूपी सामान्य वितरण और गौस कोप्युला की परिभाषाओं पर आधारित है।
मैं मल्टीवेरिएट सामान्य वितरण की आवश्यक परिभाषा और गुण प्रदान करके शुरू करूंगा, इसके बाद गौसियन कोप्युला, और फिर मैं गॉस कोप्युला से अनुकरण करने के लिए एल्गोरिथ्म प्रदान करूंगा।
बहुभिन्नरूपी सामान्य वितरण
एक यादृच्छिक वेक्टर एक है मल्टीवेरिएट सामान्य वितरण करता है, तो
एक्स घ = μ + एक जेड ,
जहां जेड एक है कश्मीर स्वतंत्र मानक सामान्य यादृच्छिक चर के आयामी वेक्टर, μ एक है स्थिरांक की आयामी वेक्टर, और एक है स्थिरांक की मैट्रिक्स। संकेतनX=(X1,…,Xd)′
X=dμ+AZ,
Zkμएक घ × कश्मीर घ = एक्स ई ( एक्स ) = μ सी ओ वी ( एक्स ) = Σ Σ = एक एक ' एक्स ~ एन डी ( μ , Σ )dAd×k=dवितरण में समानता को दर्शाता है। तो, का प्रत्येक घटक अनिवार्य रूप से स्वतंत्र मानक सामान्य यादृच्छिक चर का भारित योग है।
मीन वैक्टर और सहसंयोजक मैट्रिक्स के गुणों से, हमारे पास
और , , प्राकृतिक संकेतन लिए अग्रणी है। ।
XE(X)=μcov(X)=ΣΣ=AA′X∼Nd(μ,Σ)
गॉस योजक गॉस योजक मल्टीवेरिएट सामान्य वितरण, है कि से implicitely परिभाषित किया गया है, गॉस योजक बहुविविध सामान्य वितरण के साथ जुड़े योजक है। विशेष रूप से, Sklar की प्रमेय से गॉस
जहां मानक सामान्य वितरण फ़ंक्शन को दर्शाता है, और सहसंबंध मैट्रिक्स P के साथ बहुभिन्नरूपी सामान्य सामान्य वितरण फ़ंक्शन को दर्शाता है। इसलिए, गॉस कॉपुला केवल एक मानक बहुभिन्नरूपी सामान्य वितरण है जहां संभावना अभिन्न रूपांतर होती है प्रत्येक मार्जिन पर लागू किया जाता है।
CP(u1,…,ud)=ΦP(Φ−1(u1),…,Φ−1(ud)),
ΦΦP
सिमुलेशन एल्गोरिथ्म
उपरोक्त के मद्देनजर, गॉस कोप्युला से अनुकरण करने के लिए एक प्राकृतिक दृष्टिकोण मल्टीरिएट मानक सामान्य वितरण से उचित सहसंबंध मैट्रिक्स साथ अनुकरण करना है , और मानक सामान्य वितरण फ़ंक्शन के साथ प्रायिकता अभिन्न परिवर्तन का उपयोग करके प्रत्येक मार्जिन को परिवर्तित करना है। कोविरियन मैट्रिक्स साथ एक बहुभिन्नरूपी सामान्य वितरण से अनुकरण करते हुए अनिवार्य रूप से स्वतंत्र मानक सामान्य यादृच्छिक चर का भारित योग करने के लिए नीचे आता है, जहां "वजन" मैट्रिक्स कोवेरिएंस मैट्रिक्स के चोल्स्की अपघटन द्वारा प्राप्त किया जा सकता है ।PΣAΣ
इसलिए, सहसंबंध मैट्रिक्स साथ गॉस कॉपुला से नमूनों को अनुकरण करने के लिए एक एल्गोरिथ्म है:nP
- चोल्स्की अपघटन करें , और को परिणामी निचले त्रिकोणीय मैट्रिक्स के रूप में सेट करें ।PA
- निम्नलिखित चरणों को बार दोहराएं ।
n
- एक वेक्टर स्वतंत्र मानक सामान्य उत्पन्न करें ।Z=(Z1,…,Zd)′
- सेट करेंX=AZ
- वापसी ।U=(Φ(X1),…,Φ(Xd))′
R का उपयोग करके इस एल्गोरिथ्म के एक उदाहरण कार्यान्वयन में निम्नलिखित कोड:
## Initialization and parameters
set.seed(123)
P <- matrix(c(1, 0.1, 0.8, # Correlation matrix
0.1, 1, 0.4,
0.8, 0.4, 1), nrow = 3)
d <- nrow(P) # Dimension
n <- 200 # Number of samples
## Simulation (non-vectorized version)
A <- t(chol(P))
U <- matrix(nrow = n, ncol = d)
for (i in 1:n){
Z <- rnorm(d)
X <- A%*%Z
U[i, ] <- pnorm(X)
}
## Simulation (compact vectorized version)
U <- pnorm(matrix(rnorm(n*d), ncol = d) %*% chol(P))
## Visualization
pairs(U, pch = 16,
labels = sapply(1:d, function(i){as.expression(substitute(U[k], list(k = i)))}))
निम्न चार्ट उपरोक्त आर कोड के परिणामस्वरूप डेटा दिखाता है।