कैसे कुशलतापूर्वक यादृच्छिक सकारात्मक-अर्ध-सहसंबद्ध सहसंबंध matrices उत्पन्न करने के लिए?


38

मैं सकारात्‍मक रूप से सकारात्‍मक-साम्‍प्रदायिक (पीएसडी) सहसंबंध वाले मैट्रिसेस पैदा करने में सक्षम होना चाहूंगा। मेरी विधि नाटकीय रूप से धीमी हो जाती है क्योंकि मैं उत्पन्न होने वाले मैट्रिस के आकार को बढ़ाता हूं।

  1. क्या आप कोई कुशल उपाय सुझा सकते हैं? यदि आप मतलाब में किसी भी उदाहरण से अवगत हैं, तो मैं बहुत आभारी हूं।
  2. PSD सहसंबंध मैट्रिक्स उत्पन्न करते समय आप उत्पन्न होने वाले मैट्रिक्स का वर्णन करने के लिए मापदंडों को कैसे चुनेंगे? एक औसत सहसंबंध, सहसंबंधों के मानक विचलन, आइगेनवेल्यूज?

जवाबों:


16

आप इसे पीछे की ओर कर सकते हैं: प्रत्येक मैट्रिक्स (सभी सममित PSD मैट्रिक्स का सेट) को विघटित किया जा सकता है पी × पीCR++pp×p

C=OTDO जहां एक ऑर्थोनॉर्मल मैट्रिक्स हैO

प्राप्त करने के लिए , पहले एक यादृच्छिक आधार उत्पन्न (जहां यादृच्छिक वैक्टर, आम तौर पर कर रहे हैं )। वहां से, प्राप्त करने के लिए ग्राम-श्मिट orthogonalization प्रक्रिया का उपयोग करें( v 1 , , वी पी ) वी मैं ( - 1 , 1 ) ( यू 1 , , यू पी ) = हेO(v1,...,vp)vi(1,1)(u1,....,up)=O

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

अंत में, एक विकर्ण मैट्रिक्स है, जिनके तत्व सभी सकारात्मक हैं (यह फिर से, उत्पन्न करना आसान है: यादृच्छिक संख्या उत्पन्न करें, उन्हें वर्ग करें, उन्हें सॉर्ट करें और उन्हें मैट्रिक्स द्वारा एक पहचान के विकर्ण तक रखें )।पी पी पीDppp


3
(1) ध्यान दें कि परिणामस्वरूप एक सहसंबंध मैट्रिक्स नहीं होगा (जैसा कि ओपी द्वारा अनुरोध किया गया है), क्योंकि यह विकर्ण पर नहीं होगा। बेशक यह विकर्ण पर लोगों के लिए rescaled किया जा सकता है, इसे , जहाँ एक विकर्ण मैट्रिक्स है जो के समान । (२) यदि मुझसे गलती नहीं हुई है, तो इससे सहसंबंध मैट्रीस हो जाएगा, जहां सभी ऑफ-डायगोनल तत्व आसपास केंद्रित होते हैं , इसलिए कोई लचीलापन नहीं है जो ओपी की तलाश कर रहा था (ओपी एक औसत संबंध स्थापित करने में सक्षम होना चाहता था) , सहसंबंधों के मानक विचलन, eigenvalues ​​" )- 1 / 2 सी - 1 / 2सी 0CE1/2CE1/2EC0
अमीबा का कहना है कि मोनिका

@amoeba: जब से आप बताते हैं, मैं (2) को संबोधित करूंगा, (1) का समाधान तुच्छ है। एक PSD मैट्रिक्स (और इसलिए एक सहसंयोजक और एक सहसंबंध मैट्रिक्स भी) के 'आकार' (विकर्ण तत्वों के बीच का संबंध) के एक नंबर लक्षणकरण इसकी स्थिति संख्या है। और, ऊपर वर्णित विधि इस पर पूर्ण नियंत्रण की अनुमति देती है। '0 के आस-पास के विकर्ण तत्वों की सांद्रता' PSD मैट्रिसेस उत्पन्न करने के लिए इस्तेमाल की जाने वाली विधि की विशेषता नहीं है, बल्कि, यह सुनिश्चित करने के लिए कि मैट्रिक्स PSD है और काफी बड़ी है , यह सुनिश्चित करने के लिए आवश्यक बाधाओं का एक परिणाम है। p
user603

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

@amoeba: तब मैं यह मानने में गलत था कि आवश्यकता के अनुसार बड़े सहसंबंध वाले मैट्रोज के विकर्ण जब वे दोनों सकारात्मक होने की अनुमति देते हैं, साथ ही नकारात्मक भी करीब होते हैं। ज्ञानवर्धक उदाहरण के लिए धन्यवाद।
user603

1
मैंने यादृच्छिक सहसंबंध मैट्रिक्स उत्पन्न करने पर एक बहुत अच्छा पेपर पढ़ा और यहां अपना उत्तर दिया (साथ ही उस लिंक किए गए धागे में एक और उत्तर)। मुझे लगता है कि आपको यह दिलचस्प लग सकता है।
अमीबा का कहना है कि मोनिका

27

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

विकर्ण पर लोगों के साथ आकार का एक वास्तविक सममित मैट्रिक्स में अद्वितीय ऑफ-विकर्ण तत्व होते हैं और इसलिए इन्हें में एक बिंदु के रूप में पैराड्राइक किया जा सकता है। । इस स्थान का प्रत्येक बिंदु एक सममित मैट्रिक्स से मेल खाता है, लेकिन उनमें से सभी सकारात्मक-निश्चित नहीं हैं (जैसा कि सहसंबंध मैट्रीस होना है)। सहसंबंध की परिपक्वताएं इसलिए (वास्तव में एक जुड़ा हुआ उत्तल उपसमुच्चय) का एक उप-समूह बनाती हैं, और दोनों विधियाँ इस उपसमुच्चय पर एक समान वितरण से अंक उत्पन्न कर सकती हैं।d ( d - 1 ) / 2 R d ( d - 1 ) / 2 R d ( d - 1 ) / 2d×dd(d1)/2Rd(d1)/2Rd(d1)/2

मैं प्रत्येक विधि का अपना MATLAB कार्यान्वयन प्रदान करूँगा और उन्हें साथ चित्रित करूँगा ।d=100


प्याज की विधि

प्याज विधि एक अन्य पेपर (एलकेजे में रेफरी # 3) से आती है और इसका नाम इस तथ्य से जुड़ा है कि सहसंबंध मैट्रिक्स मैट्रिक्स के साथ शुरू होते हैं और इसे स्तंभ और पंक्ति द्वारा पंक्ति में बढ़ते हैं। परिणाम वितरण समान है। मैं वास्तव में विधि के पीछे के गणित को नहीं समझता (और वैसे भी दूसरी विधि को पसंद करता हूं), लेकिन यहाँ परिणाम है:1×1

प्याज की विधि

यहां और प्रत्येक सबप्लॉट के शीर्षक के नीचे सबसे छोटा और सबसे बड़ा आइगेनवेल्स, और निर्धारक (सभी आईजेनवल का उत्पाद) दिखाया गया है। यहाँ कोड है:

%// ONION METHOD to generate random correlation matrices distributed randomly
function S = onion(d)
    S = 1;
    for k = 2:d
        y = betarnd((k-1)/2, (d-k)/2); %// sampling from beta distribution
        r = sqrt(y);
        theta = randn(k-1,1);
        theta = theta/norm(theta);
        w = r*theta;
        [U,E] = eig(S);
        R = U*E.^(1/2)*U';             %// R is a square root of S
        q = R*w;
        S = [S q; q' 1];               %// increasing the matrix size
    end
end

विस्तारित प्याज विधि

LKJ ने इस विधि को थोड़ा संशोधित किया, ताकि आनुपातिक वितरण से सहसंबंध matrices का नमूना लिया जा सके । बड़ा , बड़ा निर्धारक होगा, जिसका अर्थ है कि संबंध सहसंबंध matrices अधिक से अधिक पहचान मैट्रिक्स से संपर्क करेंगे। मान समरूप वितरण से मेल खाता है। मैट्रिस के नीचे की आकृति में साथ उत्पन्न होते हैं । [ डी टीC[detC]η1ηη=1η=1,10,100,1000,10000,100000

विस्तारित प्याज विधि

वैनिला प्याज विधि के रूप में परिमाण के उसी क्रम के निर्धारक को प्राप्त करने के लिए किसी कारण से, मुझे और not लगाने की आवश्यकता है (जैसा कि एलकेजे द्वारा दावा किया गया है)। सुनिश्चित नहीं है कि गलती कहां है।η=0η=1

%// EXTENDED ONION METHOD to generate random correlation matrices
%// distributed ~ det(S)^eta [or maybe det(S)^(eta-1), not sure]
function S = extendedOnion(d, eta)
    beta = eta + (d-2)/2;
    u = betarnd(beta, beta);
    r12 = 2*u - 1;
    S = [1 r12; r12 1];  

    for k = 3:d
        beta = beta - 1/2;
        y = betarnd((k-1)/2, beta);
        r = sqrt(y);
        theta = randn(k-1,1);
        theta = theta/norm(theta);
        w = r*theta;
        [U,E] = eig(S);
        R = U*E.^(1/2)*U';
        q = R*w;
        S = [S q; q' 1];
    end
end

बेल की विधि

वाइन विधि मूल रूप से जो (एलकेजे में जे) द्वारा सुझाई गई थी और एलकेजे द्वारा सुधार किया गया था। मुझे यह अधिक पसंद है, क्योंकि यह वैचारिक रूप से आसान है और संशोधित करना भी आसान है। विचार आंशिक सहसंबंधों को उत्पन्न करने के लिए है (वे स्वतंत्र हैं और बिना किसी बाधा के से कोई भी मान हो सकते हैं ) और फिर उन्हें पुनरावर्ती सूत्र के माध्यम से कच्चे सहसंबंधों में परिवर्तित कर सकते हैं। गणना को एक निश्चित क्रम में व्यवस्थित करना सुविधाजनक है, और इस ग्राफ को "बेल" के रूप में जाना जाता है। महत्वपूर्ण रूप से, यदि आंशिक सहसंबंधों को विशेष बीटा वितरण (मैट्रिक्स में अलग-अलग कोशिकाओं के लिए) से मापा जाता है, तो परिणामस्वरूप मैट्रिक्स समान रूप से वितरित किया जाएगा। यहाँ फिर से, LKJ आनुपातिक वितरण से नमूने के लिए एक अतिरिक्त पैरामीटर पेश करता हैd(d1)/2[1,1]η[detC]η1 । परिणाम विस्तारित प्याज के समान है:

बेल की विधि

%// VINE METHOD to generate random correlation matrices
%// distributed ~ det(S)^eta [or maybe det(S)^(eta-1), not sure]
function S = vine(d, eta)
    beta = eta + (d-1)/2;   
    P = zeros(d);           %// storing partial correlations
    S = eye(d);

    for k = 1:d-1
        beta = beta - 1/2;
        for i = k+1:d
            P(k,i) = betarnd(beta,beta); %// sampling from beta
            P(k,i) = (P(k,i)-0.5)*2;     %// linearly shifting to [-1, 1]
            p = P(k,i);
            for l = (k-1):-1:1 %// converting partial correlation to raw correlation
                p = p * sqrt((1-P(l,i)^2)*(1-P(l,k)^2)) + P(l,i)*P(l,k);
            end
            S(k,i) = p;
            S(i,k) = p;
        end
    end
end

आंशिक सहसंबंधों के मैनुअल नमूने के साथ बेल विधि

जैसा कि ऊपर देखा जा सकता है, लगभग-विकर्ण सहसंबंध मैट्रीस में समान वितरण परिणाम। लेकिन मजबूत सहसंबंधों के लिए कोई भी बेल विधि को आसानी से संशोधित कर सकता है (यह एलकेजे पेपर में वर्णित नहीं है, लेकिन सीधा है): इसके लिए एक वितरण से आंशिक सहसंबंधों का नमूना होना चाहिए, जो आसपास केंद्रित है । नीचे मैं उन्हें बीटा वितरण ( से ) तक साथ नमूना देता हूं । बीटा वितरण के जितने छोटे पैरामीटर हैं, उतना ही यह किनारों के पास केंद्रित है।[ 0 , 1 ] [ - 1 , 1 ] α = β = 50 , 20 , 10 , 5 ,±1[0,1][1,1]α=β=50,20,10,5,2,1

मैनुअल नमूने के साथ बेल विधि

ध्यान दें कि इस मामले में वितरण को क्रमचय अपरिवर्तनीय होने की गारंटी नहीं है, इसलिए मैं पीढ़ी के बाद यादृच्छिक रूप से पंक्तियों और स्तंभों की अनुमति देता हूं।

%// VINE METHOD to generate random correlation matrices
%// with all partial correlations distributed ~ beta(betaparam,betaparam)
%// rescaled to [-1, 1]
function S = vineBeta(d, betaparam)
    P = zeros(d);           %// storing partial correlations
    S = eye(d);

    for k = 1:d-1
        for i = k+1:d
            P(k,i) = betarnd(betaparam,betaparam); %// sampling from beta
            P(k,i) = (P(k,i)-0.5)*2;     %// linearly shifting to [-1, 1]
            p = P(k,i);
            for l = (k-1):-1:1 %// converting partial correlation to raw correlation
                p = p * sqrt((1-P(l,i)^2)*(1-P(l,k)^2)) + P(l,i)*P(l,k);
            end
            S(k,i) = p;
            S(i,k) = p;
        end
    end

    %// permuting the variables to make the distribution permutation-invariant
    permutation = randperm(d);
    S = S(permutation, permutation);
end

यहां बताया गया है कि ऑफ-विकर्ण तत्वों के हिस्टोग्राम ऊपर के मैट्रिसेस को देखते हैं (वितरण का एकरस रूप से बढ़ता है):

ऑफ-विकर्ण तत्व


अद्यतन: यादृच्छिक कारकों का उपयोग करना

कुछ मजबूत सहसंबंधों के साथ यादृच्छिक सहसंबंध मैट्रिक्स बनाने का एक वास्तव में सरल तरीका @shabbychef द्वारा उत्तर में इस्तेमाल किया गया था, और मैं इसे यहाँ भी वर्णन करना चाहूंगा। यह विचार बेतरतीब ढंग से कई ( ) लोडिंग ( आकार का रैंडम मैट्रिक्स ) उत्पन्न करने के लिए है , सहसंयोजक मैट्रिक्स (जो निश्चित रूप से पूर्ण रैंक नहीं होगा ) और इसे जोड़ने के लिए एक यादृच्छिक विकर्ण मैट्रिक्स सकारात्मक तत्वों के साथ पूर्ण रैंक। परिणामी सहसंयोजक मैट्रिक्स को सहसंबंध मैट्रिक्स बनने के लिए सामान्यीकृत किया जा सकता है, देकर।k<dWk×dWWDB=WW+DC=E1/2BE1/2, जहां एक विकर्ण मैट्रिक्स है, जिसमें के समान विकर्ण है । यह बहुत सरल है और यह ट्रिक करता है। यहाँ लिए कुछ उदाहरण सहसंबंध मेट्रिसेस हैं :EBk=100,50,20,10,5,1

यादृच्छिक कारकों से यादृच्छिक सहसंबंध परिपक्वता

और कोड:

%// FACTOR method
function S = factor(d,k)
    W = randn(d,k);
    S = W*W' + diag(rand(1,d));
    S = diag(1./sqrt(diag(S))) * S * diag(1./sqrt(diag(S)));
end

यहाँ आंकड़े उत्पन्न करने के लिए इस्तेमाल किया जाने वाला रैपिंग कोड है:

d = 100; %// size of the correlation matrix

figure('Position', [100 100 1100 600])
for repetition = 1:6
    S = onion(d);

    %// etas = [1 10 100 1000 1e+4 1e+5];
    %// S = extendedOnion(d, etas(repetition));

    %// S = vine(d, etas(repetition));

    %// betaparams = [50 20 10 5 2 1];
    %// S = vineBeta(d, betaparams(repetition));

    subplot(2,3,repetition)

    %// use this to plot colormaps of S
    imagesc(S, [-1 1])
    axis square
    title(['Eigs: ' num2str(min(eig(S)),2) '...' num2str(max(eig(S)),2) ', det=' num2str(det(S),2)])

    %// use this to plot histograms of the off-diagonal elements
    %// offd = S(logical(ones(size(S))-eye(size(S))));
    %// hist(offd)
    %// xlim([-1 1])
end

2
यह एक शानदार ठहरनेवाला है, मुझे खुशी है कि मैंने कुछ कहा!
छायाकार

जब मैंने बेल के लिए बेल आधारित सहसंबंध मैट्रिक्स के लिए matlab कोड का अनुवाद किया और इसका परीक्षण किया, तो स्तंभ 1 में सहसंबंधों का घनत्व हमेशा बाद के स्तंभों के लिए अलग था। यह हो सकता है कि मैंने कुछ गलत अनुवाद किया हो, लेकिन शायद यह नोट किसी की मदद करता है।
चार्ली

3
आर उपयोगकर्ताओं के लिए, फंक्शन rcorrmatrix पैकेज क्लस्टर में (डब्ल्यू क्यूई और एच। जो द्वारा लिखित) बेल पद्धति को लागू करता है।
RNM

15

एक और भी सरल लक्षण वर्णन है कि वास्तविक मैट्रिक्स , सकारात्मक अर्धचालक है। ऐसा क्यों होता है यह देखने के लिए, किसी को केवल सभी वैक्टर (सही आकार के) के लिए साबित करना होगा । यह तुच्छ है:जो अप्रतिष्ठित है। तो मतलाब में, बस कोशिश करोAATAyT(ATA)y0yyT(ATA)y=(Ay)TAy=||Ay||

A = randn(m,n);   %here n is the desired size of the final matrix, and m > n
X = A' * A;

आवेदन के आधार पर, यह आपको आपके इच्छित इच्छामृत्यु का वितरण नहीं दे सकता है; उस संबंध में क्वाक का जवाब बहुत बेहतर है। Eigenvalues के Xइस कोड स्निपेट द्वारा उत्पादित Marchenko-Pastur वितरण का पालन करना चाहिए।

शेयरों के सहसंबंधों के मिलान के अनुकरण के लिए, आप कुछ अलग दृष्टिकोण चाहते हैं:

k = 7;      % # of latent dimensions;
n = 100;    % # of stocks;
A = 0.01 * randn(k,n);  % 'hedgeable risk'
D = diag(0.001 * randn(n,1));   % 'idiosyncratic risk'
X = A'*A + D;
ascii_hist(eig(X));    % this is my own function, you do a hist(eig(X));
-Inf <= x <  -0.001 : **************** (17)
-0.001 <= x <   0.001 : ************************************************** (53)
 0.001 <= x <   0.002 : ******************** (21)
 0.002 <= x <   0.004 : ** (2)
 0.004 <= x <   0.005 :  (0)
 0.005 <= x <   0.007 : * (1)
 0.007 <= x <   0.008 : * (1)
 0.008 <= x <   0.009 : *** (3)
 0.009 <= x <   0.011 : * (1)
 0.011 <= x <     Inf : * (1)

1
क्या आप किसी भी मौके पर अपने ascii_hist फ़ंक्शन को साझा करने के लिए तैयार होंगे?
शहर

@ शहर इसे सम्‍मिलित करने के लिए बहुत छोटा है!
shabbychef

1
में एक टाइपो है - यह अपने अंतिम वर्ग याद आ रही है! yT(ATA)y=(Ay)TAy=||Ay||
सिल्वर फिश

8

Kwak के उत्तर पर भिन्नता के रूप में: अपनी पसंद के वितरण से यादृच्छिक nonnegative eigenvalues ​​के साथ एक विकर्ण मैट्रिक्स उत्पन्न करें, और फिर एक समानता परिवर्तन with एक Haar-वितरित pseudorandom orthogonal मैट्रिक्स = क्यू डी क्यू टी क्यूDA=QDQTQ


एम।: अच्छा संदर्भ: यह सबसे कुशल समाधान (asymptotically) प्रतीत होता है।
whuber

3
@ शुभंकर: हे, मैंने इसे गोलूब और वैन ऋण (बेशक) से उठाया था; मैं इस समय का उपयोग तनाव-परीक्षण eigenvalue / एकवचन मान दिनचर्या के लिए परीक्षण मैट्रिस पैदा करने में मदद करने के लिए करता हूं। जैसा कि कागज से देखा जा सकता है, यह अनिवार्य रूप से क्यूआर-डिकम्पोजिंग के बराबर है जैसा कि kwak ने सुझाव दिया था, सिवाय इसके कि यह अधिक कुशलता से किया जाता है। Higham के टेक्स्ट मैट्रिक्स टूलबॉक्स, BTW में इसका MATLAB कार्यान्वयन है।
JM

एम ।:> matlab कार्यान्वयन के लिए धन्यवाद। क्या आप R में किसी Haar pseudo-random मैट्रिक्स जेनरेटर के बारे में जानेंगे?
user603

@kwak: कोई विचार नहीं है, लेकिन यदि कोई कार्यान्वयन अभी तक नहीं हुआ है, तो MATLAB कोड को R में अनुवाद करना बहुत कठिन नहीं होना चाहिए (यदि वास्तव में कोई भी नहीं है तो मैं एक कोड़ा मारने की कोशिश कर सकता हूं); एकमात्र शर्त छद्म आयामी सामान्य चर के लिए एक सभ्य जनरेटर है, जो मुझे यकीन है कि आर है।
जेएम

M।:> हाँ, मैं इसका अनुवाद शायद स्वयं करूँगा। लिंक के लिए धन्यवाद, सर्वश्रेष्ठ।
user603

4

आपने मैट्रिसेस के लिए वितरण निर्दिष्ट नहीं किया है। दो सामान्य हैं Wishart और उलटा Wishart वितरण। बार्टलेट अपघटन एक यादृच्छिक विशार्ट मैट्रिक्स (जो भी कुशलता से एक यादृच्छिक उलटा विशार्ट मैट्रिक्स प्राप्त करने के लिए हल किया जा सकता) के एक Cholesky गुणनखंड देता है।

वास्तव में, चॉल्स्की अंतरिक्ष अन्य प्रकार के यादृच्छिक PSD मैट्रिसेस उत्पन्न करने का एक सुविधाजनक तरीका है, क्योंकि आपको केवल यह सुनिश्चित करना है कि विकर्ण गैर-नकारात्मक है।


> यादृच्छिक नहीं: एक ही व्हिसर्ड से उत्पन्न दो मैट्रिस एक दूसरे से स्वतंत्र नहीं होंगे। यदि आप प्रत्येक पीढ़ी में व्हाट्सएप को बदलने की योजना बनाते हैं, तो आप पहली बार उन व्हिसार्ट को उत्पन्न करने का इरादा कैसे करते हैं?
user603

@kwak: मैं आपके सवाल को नहीं समझता: बार्टलेट अपघटन समान विसारत वितरण से स्वतंत्र ड्रॉ देगा।
साइमन बायरन

> मैं इसे फिर से बताऊं, आपको अपने व्हिस्पर वितरण का पैमाना मैट्रिक्स कहां से मिलेगा?
user603

1
@kwak: यह वितरण का एक पैरामीटर है, और इसलिए इसे तय किया गया है। आप इसे अपने वितरण की इच्छित विशेषताओं (जैसे कि माध्य) के आधार पर प्रारंभ में चुनते हैं।
साइमन बायरन

3

UTSU


यदि प्रविष्टियाँ एक समान वितरण के बजाय एक सामान्य वितरण से उत्पन्न होती हैं, तो आपके द्वारा उल्लिखित अपघटन SO (n) अपरिवर्तनीय होना चाहिए (और इसलिए Haar माप के सापेक्ष समान है)।
whuber

दिलचस्प। क्या आप इसके लिए कोई संदर्भ प्रदान कर सकते हैं?
गप्पी

1
> इस विधि के साथ समस्या यह है कि आप सबसे बड़े eigenvalue में सबसे छोटे अनुपात को नियंत्रित नहीं कर सकते हैं (और मुझे लगता है कि जैसे ही आपके यादृच्छिक रूप से उत्पन्न डेटासेट का आकार अनंत तक जाता है, यह अनुपात 1 में परिवर्तित हो जाएगा)।
user603

1

यदि आप अपने उत्पन्न सममित PSD मैट्रिक्स पर अधिक नियंत्रण रखना चाहते हैं, उदाहरण के लिए सिंथेटिक सत्यापन डेटासेट उत्पन्न करते हैं, तो आपके पास कई पैरामीटर उपलब्ध हैं। एक सममित PSD मैट्रिक्स स्वतंत्रता के सभी संबंधित डिग्री के साथ, एन-आयामी अंतरिक्ष में एक हाइपर-दीर्घवृत्त से मेल खाती है:

  1. रोटेशन।
  2. कुल्हाड़ियों की लंबाई।

तो, एक 2-आयामी मैट्रिक्स (यानी 2d दीर्घवृत्त) के लिए, आपके पास 1 रोटेशन + 2 अक्ष = 3 पैरामीटर होंगे।

यदि रोटेशन ऑर्थोगोनल मेट्रिसेस को ध्यान में रखते हैं, तो इसकी एक सही ट्रेन है, क्योंकि निर्माण फिर से , जिसके साथ उत्पादित Sym.PSD मैट्रिक्स, रोटेशन मैट्रिक्स (जो कि ऑर्गोगोनल है), और विकर्ण मैट्रिक्स, जिनके विकर्ण तत्व दीर्घवृत्त के अक्षों की लंबाई को नियंत्रित करेंगे। Σ हे डीΣ=ODOTΣOD

निम्नलिखित Matlab कोड 16 2dimensional गाऊसी-वितरित डेटासेट को एक बढ़ते कोण के साथ पर आधारित है । यादृच्छिक उत्पादन के लिए कोड टिप्पणियों में है।Σ

figure;
mu = [0,0];
for i=1:16
    subplot(4,4,i)
    theta = (i/16)*2*pi;   % theta = rand*2*pi;
    U=[cos(theta), -sin(theta); sin(theta) cos(theta)];
    % The diagonal's elements control the lengths of the axes
    D = [10, 0; 0, 1]; % D = diag(rand(2,1));    
    sigma = U*D*U';
    data = mvnrnd(mu,sigma,1000);
    plot(data(:,1),data(:,2),'+'); axis([-6 6 -6 6]); hold on;
end

अधिक आयामों के लिए, विकर्ण मैट्रिक्स सीधे-आगे (ऊपर के रूप में) है, और को रोटेशन मेट्रिसेस के गुणन से प्राप्त करना चाहिए।U


0

परीक्षण के लिए मेरे द्वारा उपयोग किया जाने वाला एक सस्ता और प्रफुल्लित करने वाला तरीका है एम एन (0,1) एन-वेक्टर वी [के] उत्पन्न करना और फिर पी = डी * आई + सम {वी [के] * वी [के] '} का उपयोग करना। एक nxn psd मैट्रिक्स के रूप में। M <n के साथ यह d = 0 के लिए एकवचन होगा, और छोटे d के लिए उच्च स्थिति संख्या होगी।


2
> इस विधि के साथ समस्या यह है कि आप सबसे बड़े eigenvalue में सबसे छोटे अनुपात को नियंत्रित नहीं कर सकते हैं (और मुझे लगता है कि जैसे ही आपके यादृच्छिक रूप से उत्पन्न डेटासेट का आकार अनंत तक जाता है, यह अनुपात 1 में परिवर्तित हो जाएगा)।
user603

> इसके अलावा, विधि बहुत कुशल नहीं है (एक
संगणक

1
आपका "यादृच्छिक मैट्रिक्स" एक विशेष रूप से संरचित है जिसे "विकर्ण प्लस रैंक -1 मैट्रिक्स" (डीआर 1 मैट्रिक्स) कहा जाता है, इसलिए वास्तव में एक अच्छा प्रतिनिधि यादृच्छिक मैट्रिक्स नहीं है।
JM एक स्टेटिस्टिशियन नहीं है
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.