आर्टिफिशियल इंटेलिजेंस सीखना कैसे शुरू करता है?


16

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

कुछ और विशिष्ट प्रश्न

  1. मुझे किस भाषा पर ध्यान देना चाहिए? बहुत सारे लेख एअर इंडिया के लिए पायथन, सी ++ या लिस्प का सुझाव देते हैं। क्या मैं उल्लेखित अन्य भाषाओं के बजाय जावा का उपयोग कर सकता हूं?

  2. मेरे पास किस तरह की गणितीय पृष्ठभूमि होनी चाहिए? पहले वर्ष के दौरान, मैंने गणित को असतत किया, जिसमें निम्नलिखित विषय शामिल थे: सेट, मैट्रिसेस, वैक्टर, कार्य, तर्क और ग्राफ सिद्धांत (उन्होंने इन विषयों को संक्षेप में पढ़ाया)। क्या कोई और विषय हैं जो मुझे अभी सीखना चाहिए? उदाहरण के लिए, पथरी?

यदि संभव हो तो, मैं आरंभ करने के लिए किसी भी संसाधन या पुस्तकों की सराहना करूंगा, जिसका उपयोग मैं कर सकता हूं, या शायद आप लोग मुझे एक विस्तृत प्रक्रिया दे सकते हैं जिसे मैं आपके स्तर तक पकड़ने के लिए अनुसरण कर सकता हूं।

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


जवाबों:


16

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

शुरुआती लोगों के लिए एआई के बारे में कई अच्छे मुक्त परिचयात्मक संसाधन हैं। मैं इसे एक के साथ शुरू करने की अत्यधिक सलाह देता हूं: http://aiplaybook.a16z.com/ उन्होंने AI की सामान्य अवधारणाओं के बारे में दो वीडियो भी प्रकाशित किए, आप उन्हें Vimeo पर पा सकते हैं: "AI, डीप लर्निंग, और मशीन लर्निंग: ए प्राइमर "और" एआई का वादा "

एक बार जब आप मूल एआई शर्तों और दृष्टिकोणों की स्पष्ट समझ रखते हैं, तो आपको यह पता लगाना होगा कि आपके लक्ष्य क्या हैं। आप किस तरह का AI सॉफ्टवेयर विकसित करना चाहते हैं? आप किन उद्योगों में रुचि रखते हैं? बड़ी कंपनियों की परियोजनाओं में शामिल होने की आपकी संभावनाएं क्या हैं? यह सही उपकरण लेने के लिए आसान है जब आप जानते हैं कि आप वास्तव में क्या हासिल करना चाहते हैं।

एआई के लिए नए लोगों के लिए सबसे दिलचस्प क्षेत्र डीप लर्निंग है। बस यह स्पष्ट करने के लिए, मशीन लर्निंग के बाहर एआई के कई क्षेत्र हैं और डीप लर्निंग के बाहर मशीन लर्निंग के कई क्षेत्र हैं। (आर्टिफिशियल इंटेलिजेंस> मशीन लर्निंग> डीप लर्निंग) हालिया घटनाक्रम और हाइप न्यूज की ज्यादातर डीएल के बारे में हैं।

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

इस तरह का सबसे लोकप्रिय डीप लर्निंग फ्रेमवर्क TensorFlow है। यह Google द्वारा समर्थित है। इसे प्यार करो या नफरत करो, यह एक पायथन आधारित ढांचा है। कई अन्य पायथन आधारित रूपरेखाएँ हैं, साथ ही साथ। स्किकिट-लर्न, थीनो, केरस का अक्सर ट्यूटोरियल में भी उल्लेख किया गया है। (एक टिप: यदि आप Windows का उपयोग करते हैं तो आप WinPython डाउनलोड कर सकते हैं जिसमें ये सभी चौखटे शामिल हैं।)

जावा फ्रेमवर्क के बारे में, दुर्भाग्यवश इतने सारे विकल्प नहीं हैं। डीएल के लिए सबसे प्रमुख जावा ढांचा Deeplearning4j है। यह एक छोटी कंपनी द्वारा विकसित किया गया है और इसका उपयोगकर्ता आधार बहुत छोटा है फिर TensorFlow के आसपास की भीड़। इस ढांचे के लिए कम परियोजनाएं और ट्यूटोरियल हैं। हालांकि, उद्योग विशेषज्ञों का कहना है कि जावा आधारित फ्रेमवर्क अंततः जावा आधारित बिग डेटा सॉल्यूशंस के साथ बेहतर रूप से एकीकृत होते हैं और वे पोर्टेबिलिटी और आसान उत्पाद तैनाती का उच्च स्तर प्रदान कर सकते हैं। बस एक विचारधारा: नासा की जेट प्रोपल्शन लेबोरेटरी ने कई परियोजनाओं के लिए डीप्लिन्टिंग 4 जे का उपयोग किया।

यदि आप प्रवाह के साथ जाने का निर्णय लेते हैं और TensorFlow के बारे में अधिक सीखना शुरू करना चाहते हैं, तो मैं आपको "DeepLearning.TV", "sentdex" और "सिराज रावल" के YouTube चैनल देखने की सलाह देता हूं। उनके पास अच्छे ट्यूटोरियल और कुछ शांत डेमो हैं। और अगर आप एक गहरा गोता लगाने का फैसला करते हैं, तो आप udacity या coursera में ऑनलाइन कोर्स के लिए साइन अप कर सकते हैं।

यह जानना भी आपके लिए दिलचस्प हो सकता है कि वैकल्पिक भाषाओं के साथ जावा वर्चुअल मशीन के लिए अन्य डीप लर्निंग चौखटे हैं, उदाहरण के लिए क्लोजर। (क्लोजर, LISP की एक बोली है और इसे जॉन मैकार्थी द्वारा आविष्कार किया गया था, वही कंप्यूटर वैज्ञानिक जिन्होंने "कृत्रिम बुद्धिमत्ता" शब्द गढ़ा था। दूसरे शब्दों में अधिक आधुनिक और लोकप्रिय प्रोग्रामिंग भाषा और उपकरण हैं, लेकिन यह अभी भी संभव है / और थोड़े शांत हैं। / एआई के लिए भाषा का उपयोग करने के लिए जिसे मूल रूप से एआई के लिए डिज़ाइन किया गया था। हैम्बर्ग में बोल्डर और फ्रीहीट में थिंकटोपिक दो कंपनियां हैं जो एआई परियोजनाओं के लिए क्लोजर का उपयोग करती हैं। और यदि आप एआई और रोबोटिक्स में क्लोएर्योर का उपयोग करने के लिए प्रेरणा प्राप्त करने के लिए कुछ भयानक देखना चाहते हैं, तो। मैं आपको YouTube वीडियो "OSCON 2013: कैरिन मीयर, द जॉय ऑफ फ्लाइंग रोबोट्स विथ क्लोजर" की जांच करने की सलाह देता हूं।

(+++ कोई भी मुझे कुछ भी गलत कहने पर स्वतंत्र महसूस करने के लिए स्वतंत्र है। +++)


चूंकि जावा के लिए कम फ्रेमवर्क हैं, क्या इसके लिए अपनी खुद की रूपरेखा लिखना संभव है, जिसे मैं टेन्सरफ्लो के विकल्प के रूप में उपयोग कर सकता हूं? धन्यवाद
आकांक्षा २

1
बुनियादी अवधारणाओं का अध्ययन करने के लिए अपना स्वयं का ढांचा बनाना एक बहुत अच्छा विचार है। दूसरी ओर, TensorFlow को एक विशाल समुदाय और बहुत प्रतिभाशाली पेशेवरों द्वारा विकसित किया गया है। ईमानदारी से मुझे नहीं लगता कि कोई भी घर का ढांचा सफलतापूर्वक इससे मुकाबला कर सकता है। Btw, मुझे समझ में नहीं आता है कि कुछ जावा एआई फ्रेमवर्क क्यों हैं ... यह देखते हुए कि यह अभी भी नंबर 1 है। प्रोग्रामिंग भाषा और JVM हर जगह बस है। मुझे लगता है कि एआई उत्पादन के बजाय अनुसंधान के बारे में अभी भी है।
अकोपासी

6

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

आपको अच्छी तरह से संभावना और आंकड़ों में एक या दो कक्षा लेने की सेवा दी जाएगी।

प्रोग्रामिंग भाषा विकल्प कम महत्वपूर्ण है, IMO। आप AI / ML को किसी भी मुख्यधारा की भाषा में, और बहुत सारी गैर-मुख्यधारा की भाषाओं में कर सकते हैं। सबसे बड़ा अंतर प्रदर्शन, और पुस्तकालयों / उपकरणों की उपलब्धता से है। C ++, उदाहरण के लिए, आमतौर पर Java या Python को बेहतर बनाने वाला है और यह आपको अपने हार्डवेयर की क्षमताओं को अधिकतम करने के लिए "धातु के करीब" प्राप्त करने देता है। पाइथन, हालांकि, एक बहुत अच्छा एफएफआई है, और अक्सर सी या सी ++ के साथ संयोजन में उपयोग किया जाता है। पायथन, सी ++, जावा, आर, ऑक्टेव / मतलाब और कुछ अन्य भाषाओं में बहुत अधिक उच्च गुणवत्ता वाले पुस्तकालय उपलब्ध हैं, जो आपके लिए महत्वपूर्ण हैं जो आप करना चाहते हैं उसके आधार पर आपके लिए महत्वपूर्ण हो सकता है।

कहा कि, आप शायद कोशिश नहीं करना चाहते हैं और कह सकते हैं कि ML / AI में, COBOL या PL / I या आरपीजी / 400 या कुछ और। कम से कम उचित रूप से लोकप्रिय कुछ करने के लिए छड़ी। Mloss.org के आस-पास प्रहार करें और देखें कि विभिन्न भाषाओं में कौन सी लाइब्रेरी / टूलकिट उपलब्ध हैं और जो आपकी पसंद को निर्देशित करने में मदद करें।


5

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

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

  • प्रोग्रामिंग लैंग्वेज के बारे में ज्यादा परवाह न करें।

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


1
मैंने पठनीयता के लिए थोड़ा सा संपादन किया और पाठ्यपुस्तक के लिए एक लिंक जोड़ा। अच्छी सलाह, विशेष रूप से फिर से: प्रोग्रामिंग भाषाओं। (उन कोडर्स को देखें जो "किसी भी भाषा में वाक्य रचना के साथ" काम करते हैं :) किसी दिए गए प्रोजेक्ट या कार्य के लिए वास्तव में सबसे उपयुक्त या सुविधाजनक है।
DukeZhou

4

एआई की मूल बातें जानने के लिए मैंने कुछ संसाधनों को उपयोगी पाया है

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


3

AI को शुरू करने के लिए सबसे पहले समझ लें कि AI क्या है। 2012 के बाद एमएनआईएसटी की सटीकता में तेजी से वृद्धि क्यों हुई। इसकी सटीकता बढ़ाने के लिए मशीन लर्निंग को एआई की आवश्यकता क्यों है।

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

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

कंधे से कंधा मिलाकर 3 ब्लू 1 ब्राउन के बीजगणित बीजगणित वीडियो अपने गणित में सुधार करने के लिए है। दिन में एक बार लेकिन हर रोज एक वीडियो।

और अब तर्क (किसी भी एल्गोरिथ्म) के पीछे के गणित पर ध्यान दें। आप कोशिश कर सकते हैं और एनजी मशीन सीखने का कोर्स कर सकते हैं।

Android ऐप, IOS ऐप, RaspPi चेक Tensorflow dev summit 2016/2017 के निर्माण के लिए टेंसरफ़्लो का उपयोग करें।

या अगर आपको क्रैश कोर्स की जरूरत है तो इस https://youtu.be/u4alGiomYP4 को चेक करें


1
आइए स्पष्ट हो जाएं, AI html बुक और यू स्टार्ट प्रोग्रामिंग को पढ़ने के बारे में नहीं है, इससे यहां स्पष्ट हो सकता है,! ओपी को ऑक्सफोर्ड, हार्वेस्ट आदि से प्रोफेसरों से परामर्श करने की आवश्यकता है
क्विंट्टीमिया

3

आर्टिफिशियल इंटेलिजेंस में जाने से पहले, किसी और चीज के साथ किया जाना चाहिए। एक ठोस सूची नहीं है, लेकिन विभिन्न एल्गोरिदम का एक अच्छा ज्ञान अनिवार्य है। इसके अलावा आपको कम से कम एक प्रोग्रामिंग भाषा, जैसे सी ++ या जावा के साथ सहज होना चाहिए। यदि आप पूरी तरह से कंप्यूटर विज्ञान में नए हैं, तो मैं आपको आर्टिफिशियल इंटेलिजेंस में गोता लगाने का सुझाव नहीं दूंगा। आर्टिफिशियल इंटेलिजेंस में गोता लगाने से पहले प्रोग्रामिंग के साथ कुछ अनुभव आपके लिए एक प्लस पॉइंट होगा।

आर्टिफिशियल इंटेलिजेंस के बारे में (ब्लॉग, पेपर, विद्वान लेख आदि) पढ़ना शुरू करें। जैसे कि यह क्या है, इसके अनुप्रयोग, वर्तमान स्थिति और अन्य सामान जो आप पा सकते हैं। छोटे खेलों जैसे टिक टैक टो, सुडोकू, रिवर्सी (ओथेलो) आदि के लिए एआई कोड बनाना शुरू करें। आप अपना खुद का सिम्युलेटर बना सकते हैं और एक कोड का निर्माण कर सकते हैं जो रूबिक क्यूब को हल करता है। इसी तरह, पैटर्न रिकॉग्निशन और मशीन लर्निंग के लिए कोड बनाएं। कुछ भी करने से सीखने से बेहतर है। LISP और अजगर जैसी भाषाएँ बहुत सहायक होंगी। यहां दो उत्तर दिए गए हैं जो आपकी सहायता करेंगे, ans1 और ans2

यदि आप एक व्यक्ति हैं जो किताबों से (मेरी तरह) पढ़ना और सीखना पसंद करते हैं, तो आप आर्टिफिशियल इंटेलिजेंस: ए मॉडर्न एप्रोच (पीटर नॉरविग और स्टुअर्ट रसेल) खरीद सकते हैं। पुस्तक बहुत अच्छी है और मध्यवर्ती और उन्नत स्तर के लिए अच्छी तरह से काम करती है। पुस्तक में दी गई व्यायाम समस्याओं को हल करने का प्रयास करें। पुस्तकों का हल पीडीएफ ऑनलाइन उपलब्ध है । मशीन लर्निंग के लिए दो किताबें जो मैं सुझाता हूं, वह है पैटर्न रिकॉग्निशन एंड मशीन लर्निंग (क्रिस्टोफर एम। बिशप) और प्रोग्रामिंग कलेक्टिव इंटेलिजेंस (ओ'रेली)।

शुरुआत के लिए, आर्टिफिशियल इंटेलिजेंस और टेक्नोलॉजिकल सिंगुलैरिटी पर एक बहुत अच्छा लेख है

लेख लंबा है और दो भागों में विभाजित है। यदि आप आर्टिफिशियल इंटेलिजेंस के बारे में गंभीर हैं तो मैं आपको इस लेख को पढ़ने की जोरदार सलाह देता हूं। यह आपको कुछ अच्छी अंतर्दृष्टि देगा।

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

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.