संसाधन लोड हो रहा है... लोड करना...

मजेदार मशीन लर्निंगः सबसे संक्षिप्त परिचय गाइड

लेखक:आविष्कारक मात्रा - छोटे सपने, बनाया गयाः 2016-12-07 12:37:21, अद्यतन किया गयाः 2016-12-07 12:40:26

मजेदार मशीन लर्निंगः सबसे संक्षिप्त परिचय गाइड


जब आप लोगों को मशीन सीखने के बारे में सुनते हैं, तो क्या आप इसके बारे में कुछ अस्पष्ट धारणा रखते हैं? क्या आप अपने सहकर्मियों के साथ बात करते समय सिर हिलाते हुए थक गए हैं? चलो इसे बदल दें!

इस मार्गदर्शिका के पाठकों के लिए सभी दोस्त हैं जो मशीन सीखने के बारे में जानना चाहते हैं, लेकिन यह नहीं जानते कि कैसे शुरू करना है। मुझे लगता है कि आप में से कई ने विकिपीडिया के शब्दों को पढ़ा है जो मशीन सीखने के बारे में हैं, और यह सोचकर निराश हैं कि कोई भी उच्च स्तरीय व्याख्या नहीं दे सकता है। यह वही है जो आप चाहते हैं।

इस लेख का उद्देश्य सरल होना है, जिसका अर्थ है कि लेख में बहुत सारे सामान्यीकरण हैं। लेकिन यह किसकी परवाह करता है? जब तक आप पाठकों को एमएल में अधिक रुचि रखते हैं, तब तक काम पूरा हो जाता है।

  • मशीन सीखने के लिए क्या है?

    मशीन लर्निंग का यह विचार है कि आपको किसी विशेष प्रोग्राम कोड को लिखने की आवश्यकता नहीं है, लेकिन सामान्य एल्गोरिदम डेटासेट पर आपके लिए दिलचस्प उत्तर निकाल सकते हैं।

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

    img

    मशीन लर्निंग एल्गोरिदम एक ब्लैक बॉक्स है जिसे कई अलग-अलग वर्गीकरण समस्याओं को हल करने के लिए पुनः उपयोग किया जा सकता है।

    मशीन लर्निंग कील एक व्यापक शब्द है जो कई समान आनुवंशिक एल्गोरिदम को कवर करता है।

  • दो प्रकार के मशीन सीखने वाले एल्गोरिदम

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

    • पर्यवेक्षित शिक्षा

      मान लीजिए कि आप एक रियल एस्टेट एजेंट हैं और आपका व्यवसाय बड़ा हो रहा है, इसलिए आपने एक समूह को काम पर रखा है। लेकिन समस्या यह है कि आप एक घर को एक नज़र में देख सकते हैं और जानते हैं कि यह कितना मूल्यवान है।

      अपने प्रशिक्षुओं की मदद करने के लिए (शायद छुट्टियों के लिए अपने आप को मुक्त करने के लिए), आप एक छोटा सा सॉफ्टवेयर लिखने का फैसला करते हैं जो आपके क्षेत्र में घरों के मूल्य का आकलन करने के लिए घरों के आकार, स्थान और समान घरों की बिक्री मूल्य जैसे कारकों के आधार पर करता है।

      आप तीन महीने के लिए शहर में हर घर के सौदे को लिखते हैं, हर एक पर आप बेडरूम की संख्या, घर का आकार, जमीन आदि के बारे में विस्तृत विवरण लिखते हैं। लेकिन सबसे महत्वपूर्ण बात, आप अंतिम सौदे की कीमत लिखते हैंः

      यह हमारी खाना पकाने की ट्रेनिंग डेटाबेस है।

      img

      हम इस प्रशिक्षण डेटा का उपयोग एक कार्यक्रम लिखने के लिए करते हैं जो इस क्षेत्र के अन्य घरों के मूल्य का अनुमान लगाता हैः

      img

      इस प्रकार के प्रश्नों का उत्तर आपको पहले से ही पता है, दूसरे शब्दों में, आप प्रश्नों के उत्तर जानते हैं और समाधान के तर्क को उल्टा कर सकते हैं।

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

      यह एक गणित अभ्यास की तरह है, जिसमें सभी संकेतक हटा दिए गए हैंः

      img

      मेरे भगवान! एक गुमराह छात्र ने अपने शिक्षक के उत्तरों पर अंकगणित के प्रतीक को पूरी तरह से मिटा दिया।

      इन प्रश्नों को देखकर, क्या आप समझ सकते हैं कि इन परीक्षणों में कौन सी गणित समस्याएं हैं? क्या आप जानते हैं कि आपको गणित के दाहिने भाग के उत्तर प्राप्त करने के लिए गणित के बाईं ओर संख्याओं के साथ क्या करना चाहिए?

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

    • गैर पर्यवेक्षित सीखना

      चलो उस रियल एस्टेट एजेंट के उदाहरण पर वापस चलते हैं। यदि आप नहीं जानते कि प्रत्येक घर का मूल्य क्या है? यहां तक कि अगर आप केवल घर के आकार, स्थान आदि के बारे में जानते हैं, तो भी आप बहुत अच्छे तरीके से काम कर सकते हैं। यह गैर-पर्यवेक्षित सीखने के रूप में जाना जाता है।

      img

      यहां तक कि अगर आप अज्ञात डेटा (जैसे कीमत) का अनुमान नहीं लगाना चाहते हैं, तो आप मशीन सीखने का उपयोग कुछ दिलचस्प करने के लिए कर सकते हैं।

      यह कुछ इस तरह है जैसे कोई व्यक्ति आपको एक कागज देता है जिस पर कई संख्याएँ हैं और कहता है, "अरे, मुझे नहीं पता कि ये संख्याएँ क्या हैं, शायद आप इनमें से कोई नियम खोज सकते हैं या उन्हें वर्गीकृत कर सकते हैं, या कुछ और - आपको शुभकामनाएं!

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

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

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

      उदाहरण के लिए, यदि आप कंप्यूटर के बारे में बहुत कुछ जानते हैं, तो आपको यह समझना चाहिए कि कंप्यूटर के बारे में बहुत कुछ है।

      यह बहुत अच्छा है, लेकिन क्या घरों की कीमतों का आकलन करना वास्तव में एक सीख है?

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

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

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

      बेशक, अगर आप 50 साल बाद इस लेख को पढ़ रहे हैं, तो हम एक शक्तिशाली एआई एल्गोरिथ्म के साथ आए हैं, और यह एक पुरानी चीज की तरह दिखता है। भविष्य के मानव, आप अभी भी नहीं पढ़ रहे हैं, अपने मशीन नौकर को आपको एक सैंडविच बनाने के लिए कहें।

      चलो कोड लिखते हैं!

      पिछले उदाहरण में, आप घर के मूल्य का आकलन करने के लिए क्या लिखना चाहते हैं? नीचे जाने से पहले सोचें।

      यदि आप मशीन लर्निंग के बारे में कुछ नहीं जानते हैं, तो संभावना है कि आप कुछ बुनियादी नियमों को लिखने की कोशिश करेंगे, जैसे किः

      def estimate_house_sales_price(num_of_bedrooms, sqft, neighborhood):
          price = 0
          # In my area, the average house costs $200 per sqft
          price_per_sqft = 200
      
          if neighborhood == "hipsterton":
          # but some areas cost a bit more
              price_per_sqft = 400
      
          elif neighborhood == "skid row":
          # and some areas cost less
              price_per_sqft = 100
      
          # start with a base price estimate based on how big the place is
          price = price_per_sqft * sqft
      
          # now adjust our estimate based on the number of bedrooms
          if num_of_bedrooms == 0:
          # Studio apartments are cheap
              price = price — 20000
          else:
          # places with more bedrooms are usually
          # more valuable
              price = price + (num_of_bedrooms * 1000)
      
          return price
      

      यदि आप कुछ घंटों के लिए इस तरह से काम करते हैं, तो शायद कुछ परिणाम मिलेंगे, लेकिन आपका कार्यक्रम कभी भी सही नहीं होगा और कीमतों में बदलाव के दौरान इसे बनाए रखना मुश्किल होगा।

      क्या यह बेहतर नहीं होगा यदि कंप्यूटर को यह पता लगाने के लिए एक तरीका मिल जाए कि उपरोक्त फ़ंक्शन क्या करता है?

      def estimate_house_sales_price(num_of_bedrooms, sqft, neighborhood):
          price = <computer, plz do some math for me>
          return price
      

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

      यह आपके मूल कार्यक्रम (यह सब पागल if else कथन है) को कुछ इस तरह से सरल कर सकता हैः

      def estimate_house_sales_price(num_of_bedrooms, sqft, neighborhood):
          price = 0
      
          # a little pinch of this
          price += num_of_bedrooms * .841231951398213
      
          # and a big pinch of that
          price += sqft * 1231.1231231
      
          # maybe a handful of this
          price += neighborhood * 2.3242341421
      
          # and finally, just a little extra salt for good measure
          price += 201.23432095
      
          return price
      

      कृपया उन चमत्कारिक संख्याओं के लिए ध्यान दें जो मोटे अक्षरों में चिह्नित हैं. 841231951398213, 1231.1231231, 2.3242341421, और 201.23432095;; इन्हें वजन कहा जाता है। यदि हम प्रत्येक घर के लिए सही वजन का पता लगा सकते हैं, तो हमारे फ़ंक्शन सभी घरों की कीमतों का अनुमान लगा सकते हैं!

      सबसे अच्छा वजन का पता लगाने के लिए एक सरल तरीका यह है किः

      चरण 1:

      सबसे पहले, प्रत्येक भार को 1.0 पर सेट करेंः

      def estimate_house_sales_price(num_of_bedrooms, sqft, neighborhood):
          price = 0
      
          # a little pinch of this
          price += num_of_bedrooms * 1.0
      
          # and a big pinch of that
          price += sqft * 1.0
      
          # maybe a handful of this
          price += neighborhood * 1.0
      
          # and finally, just a little extra salt for good measure
          price += 1.0
      
          return price
      

      चरण 2:

      प्रत्येक संपत्ति को अपने फ़ंक्शन में लाएं और जांचें कि अनुमानित मूल्य सही मूल्य से कितना भिन्न हैः

      img

      अपने प्रोग्राम का उपयोग करके घरों की कीमतों का अनुमान लगाएं।

      उदाहरण के लिए, ऊपर दी गई तालिका में, पहले संपत्ति का वास्तविक लेनदेन मूल्य $ 250,000 है, और आपके फ़ंक्शन मूल्यांकन का मूल्य $ 178,000 है, जो आपके लिए $ 72,000 से कम है।

      फिर अपने डेटासेट में प्रत्येक संपत्ति के मूल्यांकन के विचलन के स्क्वायर के बाद योग करें. मान लीजिए कि डेटासेट में 500 संपत्ति लेनदेन हैं, और अनुमानित मूल्य विचलन के वर्ग का योग $86,123,373 है. यह आपके फ़ंक्शन के वर्तमान घनत्व का सही घनत्व दर्शाता है.

      अब, कुल को 500 से विभाजित करें और प्रत्येक संपत्ति के लिए अनुमानित विचलन का औसत प्राप्त करें. इस औसत त्रुटि को आपके फ़ंक्शन की लागत कहें.

      यदि आप इस लागत को 0 में बदलने के लिए वजन समायोजित कर सकते हैं, तो आपका फ़ंक्शन सही है. इसका मतलब है कि आपके प्रोग्राम को इनपुट किए गए डेटा के आधार पर प्रत्येक संपत्ति लेनदेन का अनुमान लगाया जाता है. और यही हमारा लक्ष्य है। विभिन्न वजनों का प्रयास करना ताकि लागत यथासंभव कम हो सके।

      चरण 3:

      चरण 2 को बार-बार दोहराएं, सभी संभावित भारित संयोजनों का प्रयास करें; जो संयोजन लागत को 0 के करीब लाता है, वह वही है जो आप उपयोग करेंगे, और जब आप ऐसा संयोजन ढूंढेंगे, तो समस्या हल हो जाएगी!

      मन समय को बाधित करता है

      यह बहुत सरल है, है ना? सोचिए कि आपने अभी क्या किया है. आप कुछ डेटा प्राप्त करते हैं, उन्हें तीन सामान्य सरल चरणों में इनपुट करते हैं, और अंत में आपको एक फ़ंक्शन मिलता है जो आपके क्षेत्र में घरों का अनुमान लगा सकता है. लेकिन निम्नलिखित तथ्य आपके दिमाग को परेशान कर सकते हैंः

      • 1. पिछले 40 वर्षों के दौरान, कई क्षेत्रों (जैसे कि भाषाविज्ञान / अनुवाद) में किए गए अध्ययनों से पता चला है कि इस तरह के सामान्य गतिशील डेटा कंक्रीट (जैसे कि मेरे द्वारा बनाए गए शब्द) सीखने के एल्गोरिदम ने उन तरीकों को हरा दिया है जिनके लिए वास्तविक लोगों का उपयोग करना आवश्यक है। मशीन सीखने के कंक्रीट दृष्टिकोण ने अंततः मानव विशेषज्ञों को हराया।

      • 2.你最后写出的函数真是笨,它甚至不知道什么是“面积”和“卧室数”。它知道的只是搅动,改变数字来得到正确的答案。

      • 3.很可能你都不知道为何一组特殊的权重值能起效。所以你只是写出了一个你实际上并不理解却能证明的函数。

      • 4.试想一下,你的程序里没有类似“面积”和“卧室数”这样的参数,而是接受了一组数字。假设每个数字代表了你车顶安装的摄像头捕捉的画面中的一个像素,再将预测的输出不称为“价格”而是叫做“方向盘转动度数”,这样你就得到了一个程序可以自动操纵你的汽车了!

      यह बहुत पागल है, है ना?

      चरण 3 में, प्रत्येक अंक के साथ क्या होता है?

      ठीक है, निश्चित रूप से आप सभी संभावित वजनों का प्रयास नहीं कर सकते हैं ताकि सबसे अच्छा संयोजन मिल सके। यह बहुत लंबा समय ले सकता है क्योंकि प्रयास करने के लिए अंतहीन संख्याएं हो सकती हैं। इस स्थिति से बचने के लिए, गणितज्ञों ने बहुत सारे स्मार्ट तरीके खोजे हैं जो बहुत अधिक प्रयास किए बिना जल्दी से एक अच्छा वजन प्राप्त कर सकते हैं। सबसे पहले, एक सरल समीकरण लिखें जो चरण 2 को दर्शाता हैः

      यह आपकी लागत फ़ंक्शन है।

      img

      अब, चलिए मशीन सीखने वाले गणित के शब्दों को फिर से लिखते हैं (अब आप उन्हें अनदेखा कर सकते हैं):

      θ का अर्थ है वर्तमान भारित मूल्य. J ((θ) का अर्थ है कि वर्तमान भारित मूल्य के अनुरूप कीमत है।

      img

      यह समीकरण हमारे मूल्यांकन कार्यक्रम के वर्तमान भारित मान पर विचलन का आकार दर्शाता है।

      यदि हम सभी संभव भारित मानों को एक ग्राफिक के रूप में प्रदर्शित करते हैं, जो कि बेडरूम की संख्या और क्षेत्रफल के लिए दिए गए हैं, तो हमें एक ग्राफ मिलता है जो निम्न चित्र की तरह दिखता हैः

      img

      लागत फ़ंक्शन का ग्राफ़ एक कटोरे जैसा है.

      नीले रंग में सबसे कम बिंदु सबसे कम लागत का स्थान है, जिसका अर्थ है कि हमारे कार्यक्रम में सबसे कम विचलन है. उच्चतम बिंदु सबसे अधिक विचलन का मतलब है. इसलिए, अगर हम एक सेट वजन के लिए सबसे कम बिंदुओं को खोजने में सक्षम हैं जो हमें ग्राफ में ले जाते हैं, तो हमें जवाब मिल गया है!

      img

      इसलिए, हमें केवल भारभार को समायोजित करने की आवश्यकता है ताकि हम ग्राफ पर सबसे कम बिंदु की ओर ढलान कर सकें। यदि वजन के लिए छोटे समायोजन हमें सबसे कम बिंदु की ओर ले जाते हैं, तो अंत में हम बहुत अधिक भारभार को प्रयास किए बिना वहां पहुंच सकते हैं।

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

      तो, अगर हम लागत फ़ंक्शन को प्रत्येक भार के बारे में पूर्वाग्रह करते हैं, तो हम इसे प्रत्येक भार से घटा सकते हैं। यह हमें नीचे की ओर ले जाता है। ऐसा करते रहें, और अंत में हम नीचे पहुंचेंगे और वजन का सबसे अच्छा मूल्य प्राप्त करेंगे। (पढ़ें नहीं? चिंता न करें, नीचे पढ़ें) ।

      इस तरह के सर्वोत्तम वजन का पता लगाने के लिए एक विधि है, जिसे थोक ग्रेडिएंट गिरावट कहा जाता है, और इसके बारे में ऊंचाई सामान्यीकरण है। यदि आप विवरणों को समझना चाहते हैं, तो डरो मत, और आगे बढ़ो।http://hbfs.wordpress.com/2012/04/24/introduction-to-gradient-descent/) चलो ।

      जब आप मशीन लर्निंग एल्गोरिदम का उपयोग करके वास्तविक समस्याओं को हल करते हैं, तो यह सब आपके लिए तैयार है। लेकिन कुछ विशिष्ट विवरणों को समझना हमेशा उपयोगी होता है।

      क्या आपने कुछ और याद किया है?

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

      हालाँकि, यह तरीका जो मैंने आपको दिखाया है वह सरल परिस्थितियों में काम कर सकता है, लेकिन यह सभी परिस्थितियों में काम नहीं करेगा। एक कारण यह है कि घरों के दाम हमेशा एक निरंतर रेखा का पालन नहीं करते हैं।

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

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

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

    • क्या मशीन लर्निंग की शक्ति का कोई सीमा नहीं है?

      एक बार जब आप यह समझना शुरू कर देते हैं कि मशीन सीखने की तकनीक को मुश्किल समस्याओं (जैसे हस्तलिखित पहचान) को हल करने के लिए आसानी से लागू किया जा सकता है, तो आपको लगता है कि पर्याप्त डेटा के साथ, आप मशीन सीखने के साथ किसी भी समस्या को हल कर सकते हैं। बस डेटा इनपुट करें, और आप देखेंगे कि कंप्यूटर एक समानता का पता लगाता है जो डेटा के अनुरूप है।

      लेकिन यह याद रखना महत्वपूर्ण है कि मशीन सीखने का उपयोग केवल उन समस्याओं के लिए किया जाता है जिन्हें आपके पास मौजूद डेटा के साथ वास्तव में हल किया जा सकता है।

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

      img

      आप केवल वास्तविकता में मौजूद रिश्तों का मॉडल बना सकते हैं।

    • मशीन सीखने में गहराई से कैसे सीखें

      मुझे लगता है कि वर्तमान में मशीन सीखने के साथ सबसे बड़ी समस्या यह है कि यह मुख्य रूप से अकादमिक और वाणिज्यिक अनुसंधान संगठनों में सक्रिय है। उन लोगों के लिए बहुत कम सरल और समझने योग्य सीखने की सामग्री है जो विशेषज्ञ बनने के बजाय सामान्य ज्ञान चाहते हैं। लेकिन यह स्थिति हर दिन बेहतर हो रही है।

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

      इसके अलावा, आप डाउनलोड कर सकते हैं और स्थापित कर सकते हैं SciKit-Learn, और इसका उपयोग हजारों मशीन सीखने वाले एल्गोरिदम के साथ परीक्षण करने के लिए कर सकते हैं; यह एक पायथन फ्रेमवर्क है, जिसमें सभी मानक एल्गोरिदम के लिए ब्लैक बॉक्स संस्करण हैं।

पायथन डेवलपर्स से अनुप्रेषित


अधिक

ओक्लुओक्वानइस उदाहरण को प्रोफेसर ने हर बार दोहराया जब उन्होंने एक नया वर्ग शुरू किया।

रेलगाड़ीक्या यह m नहीं होना चाहिए? यह 2m क्यों बन गया है?