मुझे आयामीता के अभिशाप को समझने में परेशानी हो रही है। विशेष रूप से, मैं scikit-learn
अजगर में ट्यूटोरियल कर रहा था । क्या कोई कृपया नीचे सरल तरीके से समझा सकता है? क्षमा करें, मैं सबसे लंबे समय से समझने की कोशिश कर रहा हूं और समझ नहीं पा रहा हूं कि कुशल केएनएन अनुमानक को प्राप्त करने के लिए प्रशिक्षण उदाहरणों की संख्या के लिए गणना के साथ वे कैसे आए?
यहाँ स्पष्टीकरण है:
प्रभावी होने के लिए एक अनुमानक के लिए, आपको पड़ोसी बिंदुओं के बीच की दूरी कुछ मान d से कम होनी चाहिए, जो समस्या पर निर्भर करता है। एक आयाम में, इसके लिए औसत n ~ 1 / d अंक की आवश्यकता होती है। उपरोक्त KNN उदाहरण के संदर्भ में, यदि डेटा को 0 से 1 तक के मानों के साथ और n प्रशिक्षण टिप्पणियों के साथ सिर्फ एक विशेषता द्वारा वर्णित किया जाता है, तो नया डेटा 1 / n से अधिक दूर नहीं होगा। इसलिए, निकटतम पड़ोसी निर्णय नियम 1-n के रूप में जल्द ही कुशल होगा, जो कि बीच-वर्ग सुविधा भिन्नताओं के पैमाने की तुलना में छोटा है।
यदि सुविधाओं की संख्या p है, तो आपको अब n ~ 1 / d ^ p अंक चाहिए। मान लीजिए कि हमें एक आयाम में 10 बिंदुओं की आवश्यकता है: अब [0, 1] स्थान को प्रशस्त करने के लिए 10 आयामों में p बिंदुओं की आवश्यकता होती है। जैसे-जैसे पी बड़ा होता है, एक अच्छे अनुमानक के लिए आवश्यक प्रशिक्षण बिंदुओं की संख्या तेजी से बढ़ती है।
EDIT: ~
उस उदाहरण में अनुमानित को दर्शाने वाला टिल्ड ( ) माना जाता है? या अजगर टिल्ड ऑपरेटर?