निकटतम नेबर सर्च (एनएनएस)

निकटतम नेबर सर्च (एनएनएस), निकटतम खोज के रूप किसी दिए गए समुच्चय में उस बिंदु को खोजने की अनुकूलन समस्या है जो किसी दिए गए बिंदु के सबसे समीप (या सबसे समान) है। निकटतम को सामान्यतः असमानता फलन के संदर्भ में व्यक्त किया जाता है: जितनी कम समानता वस्तुओं को मापती है, फलन मान उतना ही बड़ा होता है।

औपचारिक रूप से निकटतम-नेबर (एनएन) खोज समस्या को निम्नलिखित इस प्रकार परिभाषित किया गया है: किसी स्थान M में बिंदुओं का समुच्चय S और क्वेरी बिंदु q ∈ M दिया गया है S में q में निकटतम बिंदु q खोजें और वॉल्यूम में डोनाल्ड नुथ या कंप्यूटर प्रोग्रामिंग की कला (1973) के 3 में इसे निकटतम डाकघर को निवास आवंटित करने के आवेदन का जिक्र करते हुए इसे डाकघर की समस्या कहा गया है। इस समस्या का प्रत्यक्ष सामान्यीकरण k-NN खोज है, जहां हमें k निकटतम बिंदु खोजने की आवश्यकता होती है।

सामान्यतः M मीट्रिक स्थान है और असमानता को दूरी मीट्रिक के रूप में व्यक्त किया जाता है जो सममित है और त्रिकोण असमानता को संतुष्ट करता है। इससे भी अधिक सामान्य M को d-आयामी सदिश स्थल के रूप में लिया जाता है जहां असमानता को यूक्लिडियन दूरी, टैक्सीकैब ज्यामिति या अन्य सांख्यिकीय दूरी का उपयोग करके मापा जाता है। चूँकि असमानता फलन इच्छानुसार हो सकता है। उदाप्रत्येकण असममित ब्रेगमैन विचलन है जिसके लिए त्रिभुज असमानता प्रयुक्त नहीं होती है।

अनुप्रयोग
निकटतम नेबर सर्च समस्या अनुप्रयोग के अनेक क्षेत्रों में उत्पन्न होती है जिनमें सम्मिलित हैं:
 * क्रम पहचान - विशेष रूप से ऑप्टिकल कैरेक्टर पहचान के लिए
 * सांख्यिकीय वर्गीकरण - के-निकटतम नेबर एल्गोरिदम देखें
 * कंप्यूटर दृष्टि - पॉइंट क्लाउड पंजीकरण के लिए
 * कम्प्यूटेशनल ज्यामिति - बिंदुओं की निकटतम जोड़ी समस्या देखें
 * डेटाबेस - उदा. सामग्री-आधारित छवि पुनर्प्राप्ति
 * कोडिंग सिद्धांत - अधिकतम संभावना डिकोडिंग विधियां देखें
 * सिमेंटिक खोज
 * डेटा संपीड़न - एमपईजी-2 मानक देखें
 * रोबोटिक सेंसिंग
 * अनुशंसा प्रणाली उदा. सहयोगात्मक फ़िल्टरिंग देखें
 * इंटरनेट विपणन - प्रासंगिक विज्ञापन और व्यवहारिक लक्ष्यीकरण देखें
 * डीएनए श्रृंखला बनाना
 * वर्तनी जाँच - सही वर्तनी का सुझाव देना
 * प्लागिअरिस्म डिटेक्शन
 * प्रोफेशनल एथलीटों के करियर पथ की पूर्वानुमान के लिए समानता स्कोर।
 * क्लस्टर विश्लेषण - अवलोकनों के समुच्चय को उपसमूहों (जिन्हें क्लस्टर कहा जाता है) में असाइन करना जिससे ही क्लस्टर में अवलोकन कुछ अर्थों में समान हों, सामान्यतः यह यूक्लिडियन दूरी पर आधारित होते हैं
 * रासायनिक समानता
 * मोशन प्लानिंग या सैंपलिंग-आधारित एल्गोरिदम
 * नमूना-आधारित गति योजना

विधियाँ
एनएनएस समस्या के विभिन्न समाधान प्रस्तावित किए गए हैं। इस प्रकार एल्गोरिदम की गुणवत्ता और उपयोगिता प्रश्नों की समय जटिलता के साथ-साथ किसी भी खोज डेटा संरचना की स्थान जटिलता द्वारा निर्धारित की जाती है जिसे बनाए रखा जाना चाहिए। अनौपचारिक अवलोकन जिसे सामान्यतः आयामी स्थिति के अभिशाप के रूप में जाना जाता है, यह बताता है कि बहुपद प्रीप्रोसेसिंग और पॉलीलॉगरिदमिक खोज समय का उपयोग करके उच्च-आयामी यूक्लिडियन सम्मिस्ट में एनएनएस के लिए कोई सामान्य-उद्देश्य स्पष्ट समाधान नहीं है।

रैखिक खोज
एनएनएस समस्या का सबसे सरल समाधान अब तक के सर्वश्रेष्ठ का ट्रैक रखते हुए डेटाबेस में क्वेरी बिंदु से प्रत्येक दूसरे बिंदु तक की दूरी की गणना करना है। यह एल्गोरिदम, जिसे कभी-कभी अनुभवहीन दृष्टिकोण के रूप में जाना जाता है इसका चलने का समय O(dN)) है जहां N, S की प्रमुखता है और d, S की आयामीता है। इसको बनाए रखने के लिए कोई खोज डेटा संरचनाएं नहीं हैं, इसलिए रैखिक खोज में डेटाबेस के संचयन से परे कोई स्थान जटिलता नहीं हैं। सामान्य खोज औसतन उच्च आयामी स्थानों पर सम्मिस्ट विभाजन दृष्टिकोण से उत्तम प्रदर्शन कर सकती है।

दूरी की तुलना के लिए पूर्ण दूरी की आवश्यकता नहीं है, इसमें अतिरिक्त सापेक्ष दूरी की आवश्यकता होती है। और ज्यामितीय समन्वय प्रणालियों में दो निर्देशांकों के मध्य की दूरी की गणना से वर्गमूल गणना को हटाकर दूरी की गणना में अधिक तेजी लाई जा सकती है। और दूरी की तुलना अभी भी समान परिणाम देती हैं।

सम्मिस्ट विभाजन
1970 के दशक से, शाखा और बाध्य पद्धति को समस्या पर प्रयुक्त किया गया है। यूक्लिडियन सम्मिस्ट के स्तिथियों में, यह दृष्टिकोण स्थानिक सूचकांक या स्थानिक पहुंच विधियों को सम्मिलित करता है। एनएनएस समस्या को हल करने के लिए अनेक सम्मिस्ट विभाजन सम्मिस्ट-विभाजन विधियां विकसित की गई हैं। संभवतः सबसे सरल k-d ट्री है, जो मूल क्षेत्र के आधे बिंदुओं वाले खोज स्थान को दो क्षेत्रों में पुनरावृत्त रूप से विभाजित करता है। और प्रत्येक विभाजन पर क्वेरी बिंदु का मूल्यांकन करके क्वेरी को रूट से लीव्स तक ट्री के ट्रैवर्सल के माध्यम से निष्पादित किया जाता है। इस प्रकार क्वेरी में निर्दिष्ट दूरी के आधार पर, निकटतम शाखाओं जिनमें हिट हो सकती हैं, इसलिए इनका भी मूल्यांकन करने की आवश्यकता हो सकती है। और निरंतर आयाम क्वेरी समय के लिए, औसत जटिलता O(log N) होता है| उत्तम ढंग से वितरित बिंदुओं के स्तिथियों में, सबसे व्यर्थ स्थिति जटिलता O(kN^(1-1/k))है| वैकल्पिक रूप से R-ट्री डेटा संरचना को गतिशील संदर्भ में निकटतम नेबर सर्च का समर्थन करने के लिए डिज़ाइन किया गया था, क्योंकि इसमें आर* ट्री जैसे सम्मिलन और विलोपन के लिए कुशल एल्गोरिदम हैं। R-ट्री न अतिरिक्त यूक्लिडियन दूरी के लिए निकटतम नेबर प्रदान कर सकते हैं, किंतु अन्य दूरियों के साथ भी इसका उपयोग किया जा सकता है।

सामान्य मीट्रिक स्थान के स्तिथियों में, शाखा-और-बाउंड दृष्टिकोण को मीट्रिक ट्री दृष्टिकोण के रूप में जाना जाता है। विशेष उदाहरणों में वीपी-ट्री और बीके-ट्री विधियां सम्मिलित हैं।

3-आयामी स्थान से लिए दिए गए बिंदुओं के समुच्चय का उपयोग करके और बाइनरी स्पेस विभाजन में डालकर और उसी स्थान से लिया गया क्वेरी बिंदु दिया गया हैं क्वेरी बिंदु के निकटतम बिंदु-क्लाउड बिंदु को खोजने की समस्या का संभावित समाधान है और यह एल्गोरिदम के निम्नलिखित विवरण में दिया गया है।

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

सन्निकटन विधियाँ
एक अनुमानित निकटतम नेबर सर्च एल्गोरिदम को उन बिंदुओं को वापस करने की अनुमति होती है जिनकी क्वेरी से दूरी अधिकतम हैं $$c$$ क्वेरी से उसके निकटतम बिंदुओं की दूरी $$c$$ का गुना हैं। इस दृष्टिकोण की अपील यह है कि अनेक स्थितियों में अनुमानित निकटतम नेबर लगभग उतना ही श्रेष्ठ होता है जितना कि स्पष्ट निकटतम होता हैं। विशेष रूप से यदि दूरी माप उपयोगकर्ता की गुणवत्ता की धारणा को स्पष्ट रूप से पकड़ लेता है, तब दूरी में छोटे अंतर से कोई अंतर नहीं पड़ना चाहिए।

निकटता निकटतम ग्राफ़ में ग्रीडी खोज
निकटता ग्राफ़ विधियाँ (जैसे एचएनएसडब्ल्यू ) को निकटतम नेबर की खोज के लिए वर्तमान अत्याधुनिक माना जाता है।

विधियाँ निकटता निकटता ग्राफ़ में $$G(V,E)$$ ग्रीडी ट्रैवर्सिंग पर आधारित होता हैं जिसमें प्रत्येक बिंदु $$x_i \in S $$ में शीर्ष $$v_i \in V $$ के साथ विशिष्ट रूप से जुड़ा हुआ है | समुच्चय में क्वेरी q के निकटतम नेबर S ग्राफ़ $$G(V,E)$$ शीर्ष की खोज का रूप लेती है| मूल एल्गोरिदम - ग्रीडी खोज - निम्नानुसार काम करती है: खोज क्वेरी q से उसके निकटतम $$\{v_j:(v_i,v_j) \in E\}$$ के प्रत्येक शीर्ष तक की दूरी की गणना करके वी में प्रवेश-बिंदु शीर्ष $$v_i \in V $$ से प्रारंभ होती है और फिर न्यूनतम दूरी मान वाला शीर्ष खोजता है। यदि क्वेरी और चयनित शीर्ष के मध्य की दूरी का मान क्वेरी और वर्तमान तत्व के मध्य की दूरी से छोटा है, तब एल्गोरिदम चयनित शीर्ष पर चला जाता है, और यह नया प्रवेश-बिंदु बन जाता है। एल्गोरिदम तब रुक जाता है जब यह स्थानीय न्यूनतम तक पहुंच जाता है वह शीर्ष जिसके निकटतम में शीर्ष नहीं होता है जो शीर्ष की तुलना में क्वेरी के समीप होता है।

निकटतम नेबर ग्राफ़ के विचार का उपयोग कई प्रकाशनों में किया गया था, जिसमें विमान के लिए वोरोनेट प्रणाली में आर्य और माउंट का मौलिक पेपर $$\mathbb{E}^n$$ के लिए रेनेट प्रणाली में सम्मिलित था।,, और मेट्रिज़्ड स्मॉल वर्ल्ड और एचएनएसडब्ल्यू एल्गोरिदम में दूरी फलन वाले स्थानों के सामान्य स्थिति के लिए इन कार्यों से पहले टूसेंट का एक अग्रणी पेपर प्रकाशित हुआ था, जिसमें उन्होंने सापेक्ष पड़ोस ग्राफ की अवधारणा प्रस्तुत की थी

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

छोटे आंतरिक आयाम वाले स्थानों में निकटतम नेबर की खोज
ट्री की आवरण में सैद्धांतिक सीमा होती है जो डेटा समुच्चय के दोहरीकरण स्थिरांक पर आधारित होती है। और खोज समय की सीमा O(c12 log n) हैं जहां c डेटा समुच्चय की विस्तारशीलता स्थिरांक होता है।

प्रक्षेपित रेडियल खोज
विशेष स्तिथियों में जहां डेटा ज्यामितीय बिंदुओं का सघन 3डी मानचित्र होता है, तब सेंसिंग विधि की प्रक्षेपण ज्यामिति का उपयोग खोज समस्या को नाटकीय रूप से सरल बनाने के लिए किया जा सकता है। इस दृष्टिकोण के लिए आवश्यक है कि 3डी डेटा को दो-आयामी ग्रिड के प्रक्षेपण द्वारा व्यवस्थित किया जाए और यह माना जाए कि डेटा ऑब्जेक्ट सीमाओं के अपवाद के साथ निकटतम ग्रिड कोशिकाओं में स्थानिक रूप से सुचारू है। सर्वेक्षण रोबोटिक्स और स्टीरियो विज़न जैसे अनुप्रयोगों में 3डी सेंसर डेटा से निपटने के समय ये धारणाएँ मान्य हैं, किन्तु सामान्यतः असंगठित डेटा के लिए ये मान्य नहीं हो सकती हैं। और वास्तव में इस विधि को वास्तविक विश्व स्टीरियो विज़न डेटा पर प्रयुक्त करने पर k-निकटतम नेबर समस्या के लिए औसत खोज समय O(1) या O(K) होता है।

सदिश सन्निकटन फ़ाइलें
उच्च-आयामी स्थानों में, ट्री अनुक्रमण संरचनाएं व्यर्थ हो जाती हैं क्योंकि नोड्स के बढ़ते प्रतिशत की वैसे भी जांच करने की आवश्यकता होती है। रैखिक खोज को तेज़ करने के लिए रैम में संग्रहीत विशेषता सदिश के संपीड़ित संस्करण का उपयोग पहली बार में डेटासमुच्चय को प्रीफ़िल्टर करने के लिए किया जाता है। दूरी की गणना के लिए डिस्क से असम्पीडित डेटा का उपयोग करके दूसरे चरण में अंतिम उम्मीदवारों का निर्धारण किया जाता है।

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

प्रकार
एनएनएस समस्या के कई प्रकार हैं और दो सबसे प्रसिद्ध हैं के-निकटतम नेबर खोज और ε-अनुमानित निकटतम नेबर खोज हैं।

 k-निकटतम नेबर
K-निकटतम नेबर एल्गोरिथ्म k-निकटतम नेबर सर्च क्वेरी के शीर्ष k निकटतम नेबर की पहचान करती है। इस विधि का उपयोग सामान्यतः अपने निकटतम की सहमति के आधार पर किसी बिंदु का अनुमान लगाने या वर्गीकृत करने के लिए पूर्वानुमानित विश्लेषण में किया जाता है। k-निकटतम नेबर ग्राफ़ वे ग्राफ़ होते हैं जिनमें प्रत्येक बिंदु अपने k निकटतम नेबर से जुड़ा होता है।

अनुमानित निकटतम नेबर
कुछ अनुप्रयोगों में निकटतम नेबर का श्रेष्ठ अनुमान प्राप्त करना स्वीकार्य हो सकता है। उन स्थितियों में, हम एल्गोरिदम का उपयोग कर सकते हैं जो उत्तम गति या मेमोरी बचत के बदले में प्रत्येक स्तिथियों में वास्तविक निकटतम नेबर को वापस करने की आश्वासन नहीं देता है। अधिकांशतः ऐसा एल्गोरिदम अधिकांश स्थितियों में निकटतम नेबर खोज लेगा, किन्तु यह पूछताछ किए जा रहे डेटासमुच्चय पर दृढ़ता से निर्भर करता है।

अनुमानित निकटतम नेबर सर्च का समर्थन करने वाले एल्गोरिदम में निकटतम नेबर सर्च के लिए स्थानीयता-संवेदनशील हैशिंगयाएलएसएच एल्गोरिदम सम्मिलित है|स्थानीयता-संवेदनशील हैशिंग, सर्वोत्तम बिन प्रथम और संतुलित बॉक्स-अपघटन ट्री आधारित खोज हैं|

निकटतम नेबर दूरी अनुपात
निकटतम नेबर दूरी अनुपात मूल बिंदु से चुनौती देने वाले निकट तक की सीधी दूरी पर सीमा प्रयुक्त नहीं करता है, किंतु पिछले निकटतम से दूरी के आधार पर इसके अनुपात पर प्रयुक्त होता है। इसकी उपयोग सामग्री-आधारित छवि पुनर्प्राप्ति में स्थानीय सुविधाओं के मध्य समानता का उपयोग करके उदाहरण के माध्यम से चित्रों को पुनः प्राप्त करने के लिए किया जाता है। इस प्रकार सामान्यतः यह अनेक क्रम मिलान समस्याओं में सम्मिलित होता है।

निकटतम के पास निश्चित-त्रिज्या
निकटतम के पास निश्चित-त्रिज्या वह समस्या है जहां कोई निर्दिष्ट बिंदु से निश्चित दूरी के अंदर यूक्लिडियन सम्मिस्ट में दिए गए सभी बिंदुओं को कुशलतापूर्वक खोज नही चाहता है। और इसमें दूरी निश्चित मानी जाती है, किन्तु प्रश्न बिंदु इच्छानुसार होते है।

सभी निकटतम नेबर
कुछ अनुप्रयोगों (जैसे एन्ट्रापी अनुमान) के लिए, हमारे पास एन डेटा-पॉइंट हो सकते हैं और हम जानना चाहते हैं कि उन एन पॉइंट्स में से प्रत्येक के लिए निकटतम नेबर कौन सा होता है। यह, निश्चित रूप से, प्रत्येक बिंदु के लिए अनेक बार निकटतम-नेबर खोज चलाकर प्राप्त किया जा सकता है, किन्तु उत्तम रणनीति एल्गोरिदम होती हैं जो अधिक कुशल खोज उत्पन्न करने के लिए इन एन प्रश्नों के मध्य सूचना अतिरेक का लाभ उठाती है। सरल उदाहरण के रूप में: जब हम बिंदु X से बिंदु Y तक की दूरी पाते हैं, तब वह हमें बिंदु Y से बिंदु से प्राप्त होती हैं

एक निश्चित आयाम को देखते हुए, अर्ध-निश्चित सकारात्मक मानदंड (जिससे प्रत्येक Lp मानदंड सम्मिलित है)| और इस स्थान में n बिंदु, दिए गए हैं प्रत्येक बिंदु का निकटतम नेबर O(n log n) समय में पाया जा सकता है और प्रत्येक के m निकटतम नेबर बिंदु O(mn log n) समय में पाया जा सकता है।

यह भी देखें

 * बॉल ट्री
 * अंकों की निकटतम जोड़ी की समस्या
 * क्लस्टर विश्लेषण
 * सामग्री-आधारित छवि पुनर्प्राप्ति
 * परिमाणिकता का अभिशाप
 * अंकीय संकेत प्रक्रिया
 * आयाम में कमी
 * नेबर के पास निश्चित-त्रिज्या
 * फूरियर विश्लेषण
 * उदाहरण-आधारित शिक्षा
 * k-निकटतम नेबर एल्गोरिथम|
 * रैखिक न्यूनतम वर्ग (गणित)
 * स्थानीयता संवेदनशील हैशिंग
 * अधिकतम आंतरिक-उत्पाद खोज
 * मिनहैश
 * बहुआयामी विश्लेषण
 * निकटतम-नेबर प्रक्षेप
 * नेबर का जुड़ना
 * प्रमुख कंपोनेंट विश्लेषण
 * रेंज खोज
 * समानता सीखना
 * विलक्षण मान अपघटन
 * विरल वितरित स्मृति
 * सांख्यिकीय दूरी
 * समय श्रृंखला
 * वोरोनोई आरेख
 * तरंगिका

बाहरी संबंध

 * Nearest Neighbors and Similarity Search – a website dedicated to educational materials, software, literature, researchers, open problems and events related to NN searching. Maintained by Yury Lifshits
 * Similarity Search Wiki – a collection of links, people, ideas, keywords, papers, slides, code and data sets on nearest neighbours