मैं MCMCglmm
मिश्रित प्रभाव मॉडल को चलाने के लिए R में पैकेज का उपयोग करके प्रदर्शन समस्याएँ कर रहा हूं । कोड इस तरह दिखता है:
MC1<-MCMCglmm(bull~1,random=~school,data=dt,family="categorical"
, prior=list(R=list(V=1,fix=1), G=list(G1=list(V=1, nu=0)))
, slice=T, nitt=iter, ,burnin=burn, verbose=F)
डेटा में लगभग 20,000 अवलोकन हैं और लगभग 200 स्कूलों में इनका समूह बनाया गया है। मैंने डेटाफ्रेम से सभी अप्रयुक्त चर को हटा दिया है और चलाने से पहले मेमोरी से अन्य सभी वस्तुओं को हटा दिया है। मेरे पास समस्या यह है कि इसे चलाने में बहुत लंबा समय लगता है, जब तक कि मैं अस्वीकार्य रूप से छोटी संख्या में पुनरावृत्तियों को कम नहीं करता। 50,000 पुनरावृत्तियों के साथ, इसमें 5 घंटे लगते हैं और मेरे पास चलाने के लिए कई अलग-अलग मॉडल हैं। इसलिए मैं जानना चाहूंगा कि क्या कोड निष्पादन में तेजी लाने के तरीके हैं, या अन्य पैकेज जो मैं उपयोग कर सकता हूं। मैं उपयोग MCMCglmm
कर रहा हूं क्योंकि मैं यादृच्छिक प्रभावों के लिए आत्मविश्वास अंतराल चाहता हूं।
दूसरी ओर, मैं इस साल के अंत में एक नया पीसी प्राप्त करने की उम्मीद कर रहा था, लेकिन थोड़ी किस्मत के साथ मैं इसे आगे लाने में सक्षम हो सकता हूं, इसलिए मैं सोच रहा हूं कि नए हार्डवेयर पर सीमित मात्रा में सबसे अच्छा पैसा कैसे खर्च किया जाए - अधिक RAM , तेज CPU आदि कार्य प्रबंधक को देखने से मुझे विश्वास नहीं होता कि RAM मुद्दा है (यह कभी भी भौतिक उपयोग के 50% से ऊपर नहीं जाता है), लेकिन सीपीयू का उपयोग 50% से अधिक नहीं मिलता है, जो मुझे उतना ही अजीब लगता है । मेरा वर्तमान सेटअप एक इंटेल कोर i5 2.66GHz, 4GB रैम, 7200rpm HDD है। क्या अतिरिक्त रैम की कीमत पर केवल सबसे तेज़ सीपीयू प्राप्त करना उचित है? मैंने इस तरह की सांख्यिकीय कंप्यूटिंग समस्याओं पर स्तर 3 सीपीयू कैश आकार के प्रभाव के बारे में सोचा?
अद्यतन: मेटा SO पर पूछे जाने के बाद मुझे सुपरसुसर पर प्रश्न और पोस्ट को फिर से लिखने की सलाह दी गई है। ऐसा करने के लिए मुझे MCMCglmm में "हुड के नीचे" क्या चल रहा है, इसके बारे में अधिक जानकारी देने की आवश्यकता है। क्या मैं यह सोचने में सही हूं कि गणना के समय का थोक अनुकूलन करने में खर्च किया जाता है - मेरा मतलब है कि कुछ जटिल फ़ंक्शन का अधिकतम पता लगाना? मैट्रिक्स उलटा और / या अन्य रैखिक बीजगणित संचालन भी एक सामान्य ऑपरेशन है जो अड़चन पैदा कर सकता है? सुपरयूजर समुदाय को मैं जो भी अन्य जानकारी दे सकता हूं, वह सबसे अधिक आभारी होगी।
lmer()
बड़े डेटा सेट के लिए फिटिंग मॉडल में काफी समय लग सकता है, खासकर यदि आपको इसे कई बार करने की आवश्यकता होती है। आपके प्रश्न का उत्तर समानांतर कंप्यूटिंग में हो सकता है, हालांकि अन्य उपयोगकर्ता (जैसे @DirkEddelbuettel) मेरे साथ इससे कहीं अधिक सहायक होंगे। वहाँ भी एक मौका है कि आप stackoverflow पर बेहतर जवाब मिल सकता है।
glmer
(जैसा कि आप मेरी अन्य पोस्ट्स से जानते हैं) और इसमें लगभग 20 सेकंड लगते हैं, लेकिन समस्या यह है कि यह आत्मविश्वास अंतराल या मानक त्रुटियां नहीं देता है, और जो मैं एक मेलिंग सूची पर पढ़ता हूं वह लेखक के संग्रह को प्रकाशित करता है। lme4
पैकेज का कहना है कि यादृच्छिक प्रभावों का नमूना वितरण बहुत तिरछा हो सकता है, इसलिए उन आंकड़ों की सूचना नहीं है। वास्तव में मैंने MCMCglmm
अभी तक पाया है कि मेरे मामले में वे सामान्य रूप से संपर्क कर रहे हैं (यह नहीं कि इससे बहुत मदद मिलती है - मैं सिर्फ कह रहा हूं)। क्या बेहतर होगा कि मैं इसे एसओ को स्थानांतरित करने का अनुरोध करूं?