2012-03-15 17 views
30

मैं वर्तमान में एक परियोजना है कि रेंगने और प्रसंस्करण डेटा (gigs के सैकड़ों) की भारी मात्रा में है, और भी उन्हें संरचित डेटा, वर्णित निकाय को मान्यता, डिडुप्लीकेशन, वर्गीकरण आदिबड़े पैमाने पर मशीन सीखने - पायथन या जावा?

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

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

मुझे किसके साथ जाना चाहिए और क्यों?

+3

[ज्योथन] (http://www.jython.org/) :-) –

+1

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

+1

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

उत्तर

14

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

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

मैं आंशिक रूप से आदेश Lucene, Solr & OpenNLP और भी अन्य लोकप्रिय ओपन सोर्स NoSQL जावा उत्पादों की तरह बहुत लोकप्रिय अपाचे उत्पादों में से कुछ का उपयोग करने में जावा के लिए सी ++ से बदल जैसे Neo4j & ओरिएंट डीबी।

9

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

4

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