Skip to main content

Support Vector Machine (समर्थन वेक्टर मेसिन)

Support Vector Machine (समर्थन वेक्टर मेसिन)


अब हामी अर्को सोच्न को लागी सोच्न सक्छौं। उदाहरणमा हामीसँग तीनवटा रातो र तीन खैरो डटहरू एक भन्दा बढी रेखाबाट विभाजित छ।


अब हामी कस्ता लाइनहरूको खोजी गर्नेछौं डेटालाई राम्रोसँग फिट राख्छ।


हामी देख्न सक्छौं कि हरियो रेखा बिन्दुहरूको नजिक छ, र गुलाबी रेखा बिन्दुको नजिकको छैन। गुलाबी रेखा थोप्लोबाट टाढा टाढा देखिन्छ र त्यसैले तिनीहरूलाई राम्रोसँग छुट्याउने। गुलाबी लाइन हरी रेखा मा यहाँ जीतन्छ। लग रिफ्रेसनबाट, हामीले व्याख्या गर्न सक्नुहुने लाइन पत्ता लगाउन कुन कुरा पत्ता लगाउने। हामी दाँतबाट दूरीहरू लाइनहरूमा काम गर्नुपर्छ। यहाँ हामी प्रत्येक बिन्दुको रेखाहरू लाइनमा हेर्न सक्नुहुन्छ र हामी फेला पार्छौं कि यी दूरीहरू बीचको न्यूनतम दूरी रेखाहरू बाट कति टाढा छ भन्ने दूरी हो।


केवल छ छ दूरी को कम से कम गरेर, हामी बिन्दुहरु लाई धेरै दूर देखि लाइनहरु को अनदेखा गर्न सक्छन्।


यसबाट, हामी गुलाबी रेखाले डेटालाई अझ राम्रो बनाउँछ भन्ने निष्कर्षमा पुग्न सक्दछ, किनकि गुलाबी रेखाको लागी न्यूनतम हरी रेखा भन्दा ठूलो छ। यहाँको लक्ष्य अघिल्लो तरिकामा ढाँचाको उत्पत्ति प्रयोग गरेर दूरी को अधिकतम गर्न को लागी हो। एल्गोरिथ्मलाई समर्थन वेक्टर मेसिन (SVM) भनिन्छ। यहाँ समर्थन विक्रेटरहरू जो हाइपरप्लेमा बन्द हुन्छन्। गुलाबी रेखा हाइपरप्ले हो जुन थोप्लाहरू विभाजित गर्दछ। SVM वर्गीकरण कार्यहरूको लागि प्रयोग गर्न सकिन्छ।


Neural Networks


यहाँ हामी हाम्रो ट्यूमर डेटा जारी राख्छौं। डेटा अब अर्को चित्रमा जस्तै व्यवस्थित गरिएको छ। यो नयाँ मोडेल हो।



कहिलेकाहीँ डेटा यस तरिका व्यवस्थित गर्न सकिन्छ:


दुर्भाग्यवश यस अवस्थामा, हामी डेटा अलग गर्न लाइन प्रयोग गर्न असमर्थ छौं।


हामी या त डेटा को अलग गर्न को लागि एक देखि अधिक लाइन या सर्कल को उपयोग गर्न सक्छन्।


ढाँचाको मूल प्रयोग गरेर, हामी त्रुटि प्रकार्य कम गर्न सक्छौं र यी रेखाहरू खोज्न सक्छौं। यो विधिलाई तंत्रिका सञ्जाल भनिन्छ। नाम मानव मस्तिष्क कसरी काम गर्दछ भन्ने प्रेरणाबाट आउछ, विशेष गरी जब बहुकल्याउने। उदाहरण एक मानव आफ्नो सेल फोन (खतरनाक हुन सक्छ) हेरफेर गर्दा सडक मा जान सक्छ।

अब हामीलाई भन्नुहोस् हामीसँग कम शक्ति भएको कम्प्यूटर छ र एकै समयमा एक भन्दा बढी कार्य गर्न असमर्थ छ। यदि हामी जान्न चाहन्छौ भने एक नयाँ डेटा ट्यूमर प्रकार दुर्व्यवहारको उदाहरण हो, हामी धेरै साना कार्यहरूमा ठूलो कार्य अलग गर्न चाहन्छौं। पहिलो कार्य वा प्रश्न हुनेछ: बैंगनी रेखामा नयाँ डेटा छ?


जवाफ हाँ हो। अर्को प्रश्न हुनेछ: हरी रेखामा यो नयाँ डेटा छ?


जवाफ पनि हाँ हुन्छ। दुई जवाफहरूको साथ हाँ हुन्छ, हामी अन्त्य गर्न सक्छौं कि नयाँ डेटा घातक ट्यूमर हो।


यसरी हामी अन्य क्षेत्रहरू हाँ र कुनै साथ पूरा गर्न सक्छौं।


त्यसो त तल दाँया क्षेत्रमा जवाफहरू 1-नो / 2-हो होला। माथिल्लो बायाँ क्षेत्रमा, हामीसँग 1-हो / 2-नो हुनेछ र अन्तमा तल्लो बायाँ क्षेत्रमा, हामीसँग 1-नो / 2-नम्बर छैन। अब हामी ग्राफ्स मा कार्यहरु को नोड्स जस्तै प्रस्तुत गर्न सक्छन्:


हरी नोडहरूसँग यो सानो ग्राफको लागि, हामी प्रश्न उठाउँछौं, यदि समकक्षहरू (पुनरावृत्ति स्नातकोत्तर = 70%, बढ्दो गतिवृति = 20%) डाटा हरी रेखामा छ वा होइन, र जवाफ कुनै छैन। एउटै प्रक्रिया अर्को ग्राफको साथ गरिन्छ, जहाँ अर्को प्रश्न, यदि समकक्षको साथ डेटा (पुनरावृत्ति स्नातकोत्तर = 70%, बढ्दो गतिवृति = 20%) बैंगनी रेखा भन्दा माथि छ वा छैन, र जवाफ छैन।


र अर्को प्रश्नको लागि, हामी केवल नयाँ नोड माथि दुई ग्राफहरूको उत्पादन संयोजन गर्दछौं।


दुई मानहरूको यो संयोजन AND तर्क प्रयोग गरी गरिन्छ। आउनुहोस् हामी यो र अपरेटरमा हेर्नौं।



यसले दुई आगतहरू लिन्छ, हो र होइन (वा संख्याहरू 0 र 1) र एक आउटपुट छ। यदि हामी होईन र छैन (वा 1 र 0), निर्गत हुनेछ (वा 0)। यदि होइन र होइन (वा 0 र 0) आगतहरू छन् भने आउटपुट हुनेछ (वा 0)।

दुईवटा साना ग्राफहरूसँग नयाँ नोडको संयोजन तंत्रिका सञ्जाल भनिन्छ। नवभागी नेटवर्कमा, हामीसँग पहिलो इनपुट इनपुट छ जहाँ हामी पुनरुत्थान grad = 70% र बढ्दो गति ग्रिड = 20% प्रविष्ट गर्दछौं। त्यसपछि आगत तहमा स्नातक बारे जानकारी मध्य लेयरमा फर्वार्ड गरिएको छ। मध्य तहमा नोडबाट जवाफहरू र हाँ हाँ। यो त उत्पादन आउटपुटमा फर्वार्ड गरिएको छ र तर्क र तर्कको तर्क र तर्क वा तंत्रिका सञ्जालको कुनै पनि छैन।


अधिक तह र नोडहरू थप जटिल कार्यहरू समाधान गर्न यस नेटवर्कमा थप्न सकिन्छ।


यो एक शक्तिशाली र महान मेशिन सिकाउने एल्गोरिथ्म हो। यो धेरै परियोजनाहरूमा जस्तै चालक सहायता प्रणाली, कर्सिभ हस्तलेखन पहिचान, टीएनए (थर्मल न्यूट्रन विश्लेषण) प्रयोग गरेर स्यास्सेसनहरूमा बम पत्ता लगाउन सकिन्छ र शायद भविष्यमा दिमाग पढ्न र धेरै धेरै प्रयोगमा प्रयोग गरिन्छ।

कर्नेल विधि(Kernel Method)




यस नयाँ उदाहरणमा, हामी नयाँ विधि देख्नेछौं, जुन रेखात्मक रूपमा विभाजित डेटालाई linearly विभाजन डेटामा परिवर्तन गर्न सक्दछ। यसका साथ हामीले अंकहरू मिलाएका छौं।


यी घटनाहरूमा, बिन्दुहरू छुट्याउने लाइन प्रयोग गर्न सम्भव छैन।


यहाँ हामी फरक हुनुपर्दछ। हामी कल्पना गर्न सक्छौं कि पोइन्टहरू ग्रिडमा देखाइएका छन् र हामी तिनीहरूलाई वक्रको प्रयोग गरेर अलग गर्दछौं।



त्यस्तै गरी, हामी कल्पना गर्न सक्छौं कि बिन्दुहरू भित्र छन्

दुई चालहरू यस्तै छन्। यो दृष्टिकोण मुख्यतः समर्थन वेक्टर मिसिनमा प्रयोग गरिन्छ र कर्नेल चाल भनिन्छ। हामी यहाँ जारी राख्ने डटहरू जस्तै (ए) र विभाजकको रूपमा वक्र को व्यवस्था गर्दछ। बिन्दुहरूलाई अलग गर्न, हामी केहि समीकरणहरूसँग काम गर्नेछौं जसले हामीलाई बिन्दुहरू अलग गर्न मदत गर्न सक्छ। हामीसँग xy, x + y, x², x³ छ।

बिन्दुहरूको समकक्ष समीकरणमा लागू गरिन्छ। आउटपुटले हामीलाई थप जानकारी दिनेछ कि समीकरण वा प्रकार्यहरू बिन्दुहरू कसरी विभाजित गर्न सकिन्छ। परिणामहरू देखाउन हामी तालिका प्रयोग गर्दछौँ।

























यसबाट हामी निष्कर्ष निकाल्छौं प्रकार्य 1 / एक्स (वा 2 / x) बिन्दुहरूलाई योजनामा विभाजन गर्दछ।
विधिको साथ, गैर-रेखीय डेटा एक उच्च-आयामी (n-dim) स्पेसमा म्याप गर्न सकिन्छ। यस नयाँ ठाउँमा, डाटा सजिलै संग विमान वा एक वक्र प्रयोग गरेर अलग गर्न सकिन्छ। यो विधि हस्तलेखन पहिचान, 3 डी पुनर्निर्माण, भूोस्टेटजिस्ट र अन्य धेरैका लागी प्रयोग गर्न सकिन्छ।

निष्कर्ष

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



Comments

Popular posts from this blog

Python मा तपाइँको पहिलो मेशिन लर्निंग प्रोजेक्ट

तपाईं Python प्रयोग गरेर मेशिन (Machine Learning) सिक्न चाहनुहुन्छ, तर तपाईं Lai  सुरू गर्न समस्या भएको छ? यस पोष्टमा, तपाइँ Python  प्रयोग गरेर तपाइँको पहिलो मेशिन Learning  Project  पूरा गर्नुहुनेछ। यो चरण-दर-चरण ट्यूटोरियलमा तपाइँले: 1.Python,  SciPy डाउनलोड र install  गर्नुहोस् र Python मा मेशिन सिक्नको लागि सबैभन्दा उपयोगी प्याकेज प्राप्त गर्नुहोस्। 2.डाटासेट लोड गर्नुहोस् र (statistical )सांख्यिकीय सारांशहरू र डेटा दृश्य प्रयोग गरेर यसको ढाँचा बुझ्नुहोस्। 3. मेसिन सिकाउने मोडलहरू सिर्जना गर्नुहोस्, उत्कृष्ट छनौट गर्नुहोस् र आत्मनिर्भर विश्वास गर्नुहोस् कि शुद्धता विश्वसनीय छ। तपाईं python मा मिसिन लर्निंग कसरि शुरू गर्नुहुन्छ? मेशिन सिक्न  सबैभन्दा राम्रो तरिका सानो project  डिजाइन र complete  Garda हुन्छ। Pythonलाई सुरू गर्न डर लागेको हुन सक्छ? Python  एक लोकप्रिय र शक्तिशाली व्याख्या भाषा छ। R को विपरीत, पाइथन एक पूर्ण भाषा र प्लेटफार्म हो जुन तपाईं अनुसन्धान र विकास र उत्पादन प्रणाली को विकास को लागि उपयोग ...