होम एआई सीखने / प्रयोग के लिए ओपन-सोर्स टूल?


9

मैं तंत्रिका शुद्ध विकास (NEAT) के साथ कुछ प्रयोग करना चाहता हूं। मैंने 90 के दशक में C ++ वापस में कुछ GA और तंत्रिका जाल कोड के साथ खेलने के लिए लिखा था, लेकिन DIY दृष्टिकोण श्रम-गहन साबित हुआ कि मैंने अंततः इसे गिरा दिया।

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

  • मैंने अपना अधिकांश समय कोड लिखने के लिए बिताया है कि यह देखने के लिए कि क्या चल रहा है (तंत्रिका शुद्ध राज्य, जनसंख्या फिटनेस) या अंतिम परिणाम (रेखांकन, आदि)।

    शायद यह एक अलग ओपन-सोर्स लाइब्रेरी द्वारा पूरा किया जाना चाहिए, लेकिन विज़ुअलाइज़ेशन समर्थन कुछ ऐसा होगा जो मुझे समस्या / समाधान पर अधिक समय बिताने और कार्यान्वयन विवरण पर कम करने की अनुमति देगा।
  • मैं सी / सी ++, जावा, सी #, पायथन, जावास्क्रिप्ट और कुछ अन्य लोगों को जानता हूं। उच्च-स्तरीय भाषा और होम हार्डवेयर पर अच्छे प्रदर्शन के बीच एक अच्छा ट्रेड-ऑफ एक अच्छा विकल्प होगा।

क्या अनुभव वाला कोई व्यक्ति एक अच्छा ओपन सोर्स लाइब्रेरी या टूल सेट कर सकता है?


यह प्रश्न softwarerecs.stackexchange.com का है । Btw, मेरे लिए, आपका प्रश्न बहुत व्यापक प्रतीत होता है और इसलिए इसे किसी भी तरह से बंद किया जाना चाहिए।
nbro

@nbro - धन्यवाद, मुझे संदेह था कि इसके लिए एक बेहतर जगह थी, लेकिन सॉफ्टवेअर के बारे में नहीं पता था।
स्कॉट स्मिथ

क्या इस सवाल पर मतदान करने वाले हमें बता सकते हैं कि क्यों?
क्विंटुमिनिया

जवाबों:


3

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

https://github.com/wagenaartje/neataptic


2

ठीक है, अगर आप TensorfFlow के साथ काम करने के लिए चुनते हैं, तो आपको पैकेज के हिस्से के रूप में TensorBoard मिलता है । वह कुछ ऐसा हो सकता है जो आप खोज रहे हैं।

और TensorFlow के साथ, आप C ++, पायथन, और कुछ अन्य भाषाओं में कोड कर सकते हैं (मुझे लगता है कि रूबी और जावा बाइंडिंग दोनों हैं, शायद अब तक अन्य)।



2

DXNN भी है, जैसा कि आपने वर्णित किया है, यह एक तंत्रिका-तंत्र है, यह Erlang में लिखा गया है। https://github.com/CorticalComputer/DXNN2

मैंने इसे मॉड्यूलर बनाने के लिए इस पर कुछ काम किया, इसलिए आप इसे एक पुस्तकालय के रूप में उपयोग करते हैं और अपने कोड / एप्लिकेशन को अलग-थलग रखते हैं।

यहां एक कोड उदाहरण है , जो DXNN को एक पुस्तकालय के रूप में डाउनलोड करता है। यह विज़ुअलाइज़ेशन के लिए gnuplot तैयार डेटा फ़ाइलों को भी उत्पन्न करता है।


2

Fann ( http://leenissen.dk/fann/wp/ ) एक नि: शुल्क खुला स्रोत तंत्रिका नेटवर्क पुस्तकालय है।

FANN विशेषताएं:

  • सी में बहुपरत कृत्रिम तंत्रिका नेटवर्क लाइब्रेरी
  • बैकप्रॉपैगनेशन ट्रेनिंग (RPROP, क्विकप्रॉप, बैच, इंक्रीमेंटल)
  • टोपोलॉजी प्रशिक्षण का विकास जो गतिशील रूप से ANN (Cascade2) बनाता है और उसे प्रशिक्षित करता है
  • उपयोग करने में आसान (केवल तीन फ़ंक्शन कॉल के साथ एक एएनएन बनाएं, प्रशिक्षित करें और चलाएं)
  • फास्ट (अन्य पुस्तकालयों की तुलना में 150 गुना तेज निष्पादन)
  • बहुमुखी (कई मापदंडों और सुविधाओं को समायोजित करने के लिए संभव है)
  • अच्छी तरह से प्रलेखित (परिचय लेख पढ़ने में आसान, गहन संदर्भ पुस्तिका और कार्यान्वयन विचार आदि का वर्णन करने वाली 50+ पृष्ठ की विश्वविद्यालय रिपोर्ट)
  • क्रॉस-प्लेटफ़ॉर्म (लिनक्स और यूनिक्स के लिए स्क्रिप्ट को कॉन्फ़िगर करें, खिड़कियों के लिए डीएल फाइलें, एमएसवीसी ++ और बोरलैंड संकलक के लिए प्रोजेक्ट फाइलें भी काम करने के लिए बताई गई हैं)
  • कार्यान्वित किए गए कई अलग-अलग सक्रियण कार्य (उस अतिरिक्त बिट गति के लिए स्टेप वाइज लीनियर फ़ंक्शंस सहित)
  • पूरे एएनएन को बचाने और लोड करने में आसान
  • उदाहरणों का उपयोग करने के लिए कई आसान
  • फ़्लोटिंग पॉइंट और फिक्स्ड पॉइंट नंबर दोनों का उपयोग कर सकते हैं (वास्तव में फ्लोट, डबल और इंट दोनों उपलब्ध हैं)
  • कैश अनुकूलित (गति के उस अतिरिक्त बिट के लिए)
  • खुला स्रोत, लेकिन अभी भी वाणिज्यिक अनुप्रयोगों में उपयोग किया जा सकता है (एलजीपीएल के तहत लाइसेंस प्राप्त)
  • प्रशिक्षण डेटा सेट की आसान हैंडलिंग के लिए रूपरेखा
  • ग्राफिकल इंटरफेस
  • विभिन्न प्रोग्रामिंग भाषाओं की एक बड़ी संख्या के लिए भाषा बाइंडिंग
  • व्यापक रूप से इस्तेमाल (लगभग 100 डाउनलोड एक दिन)

2

आनुवंशिक एल्गोरिदम के लिए, मैंने GeneticSharp लिखा है ।

.NET कोर और .NET फ्रेमवर्क के लिए एक बहु-मंच आनुवंशिक एल्गोरिथ्म लाइब्रेरी। पुस्तकालय में जीए ऑपरेटरों के कई कार्यान्वयन हैं, जैसे: चयन, क्रॉसओवर, म्यूटेशन, पुनर्निवेश और समाप्ति।

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