व्युत्पन्न अनुमान के लिए इष्टतम बैंडविड्थ घनत्व आकलन के लिए बैंडविड्थ से अलग होगा। सामान्य तौर पर, घनत्व की प्रत्येक विशेषता का अपना इष्टतम बैंडविड्थ चयनकर्ता होता है।
यदि आपका उद्देश्य औसत एकीकृत चुकता त्रुटि को कम करना है (जो सामान्य मानदंड है) तो इसके बारे में कुछ भी व्यक्तिपरक नहीं है। यह मान को प्राप्त करने का मामला है जो मानदंड को कम करता है। हेंसन (2009) की धारा 2.10 में समीकरण दिए गए हैं ।
मुश्किल हिस्सा यह है कि इष्टतम बैंडविड्थ स्वयं घनत्व का एक कार्य है, इसलिए यह समाधान सीधे उपयोगी नहीं है। उस समस्या से निपटने के लिए कई तरीके हैं। ये आमतौर पर सामान्य सन्निकटन का उपयोग करके घनत्व के कुछ क्रियाकलापों का अनुमान लगाते हैं। (ध्यान दें, इस बात की कोई धारणा नहीं है कि घनत्व स्वयं सामान्य है। धारणा यह है कि घनत्व के कुछ कार्य सामान्यता मानकर प्राप्त किए जा सकते हैं।)
जहां अनुमान लगाया जाता है, यह निर्धारित करता है कि बैंडविड्थ चयनकर्ता कितना अच्छा है। क्रूड दृष्टिकोण को "सामान्य संदर्भ नियम" कहा जाता है जो उच्च स्तर पर सन्निकटन लगाता है। हेन्सन (2009) में धारा 2.10 का अंत इस दृष्टिकोण का उपयोग करके सूत्र देता है। यह दृष्टिकोण CRAN पर पैकेज hns()
से फ़ंक्शन में लागू किया गया है ks
। यदि आप अपना खुद का कोड नहीं लिखना चाहते हैं, तो संभवतः यह सबसे अच्छा है। तो आप किसी घनत्व के व्युत्पन्न का अनुमान इस प्रकार लगा सकते हैं (उपयोग करते हुए ks
):
library(ks)
h <- hns(x,deriv.order=1)
den <- kdde(x, h=h, deriv.order=1)
एक बेहतर दृष्टिकोण, जिसे आमतौर पर चयनकर्ता में "प्रत्यक्ष प्लग" के रूप में जाना जाता है, एक निचले स्तर पर सन्निकटन लगाता है। सीधे घनत्व के अनुमान के लिए, यह Sheather-Jones विधि है, जिसे R उपयोग में लागू किया गया हैdensity(x,bw="SJ")
। हालांकि, मुझे नहीं लगता कि व्युत्पन्न आकलन के लिए किसी भी आर पैकेज में एक समान सुविधा उपलब्ध है।
सीधे कर्नेल आकलन का उपयोग करने के बजाय, आप स्थानीय बहुपद अनुमानक के साथ बेहतर हो सकते हैं। यह आर। अगेन में पैकेज locpoly()
से फ़ंक्शन का उपयोग करके किया जा सकता है ks
, कोई इष्टतम बैंडविड्थ चयन लागू नहीं किया गया है, लेकिन पूर्वाग्रह कर्नेल अनुमानकर्ताओं की तुलना में छोटा होगा। जैसे,
den2 <- locpoly(x, bandwidth=?, drv=1) # Need to guess a sensible bandwidth