8

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

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

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

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

+3

आपके द्वारा "अलग किए गए" * कारक * महत्वपूर्ण हैं। यदि आप इस परियोजना के लिए क्लोजर सीखना शुरू करते हैं, तो आप या तो अपनी ताकत लागू करने में असफल हो जाएंगे - इस मामले में आप बस उदाहरण के साथ रह सकते हैं। जावा - या इतना समय खो दें कि खोए गए समय की क्षतिपूर्ति करने के लिए इस कार्य के लिए इसे वाकई अद्भुत होना होगा। – delnan

उत्तर

16

डेटा खनन परियोजनाओं के लिए कार्यात्मक प्रोग्रामिंग चुनने के कुछ अच्छे कारण हैं।

  1. आमतौर पर डाटा खनन परियोजनाओं Algorithmics और गणित शामिल जो और अधिक आसानी से
  2. डाटा खनन परियोजनाओं कार्यात्मक प्रोग्रामिंग में व्यक्त किया जा सकता कुल कार्यों शामिल होगा (सिस्टम के अन्य प्रकार की तुलना में) - जो बेहतर हैं कार्यात्मक प्रोग्रामिंग में, क्लोजर
  3. डेटा खनन कार्यक्रम भी समांतरता के लिए उपयुक्त होंगे - निश्चित रूप से डेटा समानांतरवाद और यहां तक ​​कि कार्य समानांतरवाद, फिर कार्यात्मक प्रोग्रामिंग की एक विशेष क्षमता
  4. और Clojure तरह कार्यात्मक भाषाओं मैं के लिए वैसे भी जावा के साथ इंटरफेस कर सकते हैं हो सकता है/हे, फ़ाइल पढ़ने और लिखने
  5. मुझे लगता है कि एक कर सकते हैं उपकरण श्रृंखला आसानी से सीखें; यह इतना अलग नहीं है और इसलिए यह एक कारक नहीं होना चाहिए।

मैं खुद से यही प्रश्न पूछ रहा था और क्लोजर के लिए एक बड़े हां के साथ आया था - अभी भी मिश्रण में आर को शामिल करने के तरीके के बारे में सोच रहा हूं।

+1

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

+4

इंकेंटर को इसकी तरह आर पर देखें लेकिन क्लोजर में। – nickik

2

कोई विशेष कारण नहीं है। जो भी भाषा आप सबसे ज्यादा सहज महसूस करते हैं उसे चुनें।

similar question about natural language processing पर मेरा उत्तर देखें। मुझे लगता है कि कुछ विशेषताओं में लोग सोचते हैं कि अस्पष्ट भाषाएं एआई के अनुकूल हैं, वास्तव में प्रतिकूल हैं।

+0

"मुझे लगता है कि कुछ विशेषताओं में लोग सोचते हैं कि अस्पष्ट भाषाएं एआई के अनुकूल हैं, वास्तव में प्रतिकूल हैं।"<< क्या आप इस पर विस्तार से उदाहरण के साथ विस्तृत कर सकते हैं? – missingfaktor

+0

@missingfaktor: मैंने जो जवाब जोड़ा है उसे देखें। –

0

अक्सर, कार्यात्मक प्रोग्रामिंग समाधान अधिक स्केलेबल होते हैं।

+0

और भी अधिक, वे नहीं हैं। –

3

सबसे शक्तिशाली भाषा का उपयोग करें जिसके साथ आप सहज हैं।

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

संबंधित मुद्दे