एनाकोंडा का उपयोग न करें: एक सभ्य मशीन सीखने के माहौल को कैसे सेटअप करें?

विंडोज / लिनक्स पर मिनिकोंडा के साथ एक सभ्य, मजबूत मशीन सीखने का माहौल स्थापित करना।

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

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

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

शुरू करने से पहले, ध्यान रखें कि लिनक्स की तरह * NIX वातावरण पर मशीन सीखने में अपनी यात्रा शुरू करने के लिए यह सबसे अच्छा होगा। पर चलते हैं।

एनाकोंडा (मिनिकोंडा) स्थापित करना

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

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

इंस्टॉलर को डाउनलोड करना

Windows विंडोज: विंडोज पर, हमारे पास उपयोगी सीएलआई इंस्टॉलर (या पैकेज मैनेजर यदि आप होगा): स्कूप। यह अनुशंसा की जाती है कि आप अपने CLI सॉफ़्टवेयर की स्थापना के लिए स्कूप का उपयोग करें। स्कूप में मेरे परिचय के लिए यहां देखें - विंडोज पैकेज मैनेजर: 一行 代码 」into into into into into into 管理 स्कूप 你 into 软件 विंडोज into।

सबसे पहले, स्कूप स्थापित करें और अतिरिक्त बकेट जोड़ें:

# स्कूप स्थापित करें ius -useb get.scoop.sh | आईईएक्स
# एक्सट्रैस बकेट स्कूप बकेट जोड़ें एक्सट्रा जोड़ें

फिर निम्न कमांड के साथ मिनिकोंडा स्थापित करें:

स्कूप स्थापित miniconda3

और हम कर रहे हैं! यह सिर्फ इतना आसान है।

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

मिनिकोंडा विंडोज इंस्टॉलर

लिनक्स: मिनिकोंडा पैकेज-मैनेजर-प्रबंधित संस्करण (यानी, एपीटी: उबंटू के उन्नत पैकेज टूल) के साथ नहीं आता है। यहां देखें: WSL के साथ विंडोज पर देव - CLI - APT)। हम इसे स्थापित करने के लिए आधिकारिक इंस्टॉलर स्क्रिप्ट का उपयोग करेंगे।

सबसे पहले, मिनिकोंडा के होमपेज पर जाएं: डॉक्स »मिनिकोंडा, और लिनक्स पर पायथन 3 के साथ जारी मिनिकोंडा के नवीनतम संस्करण के लिए लिंक प्राप्त करें:

मिनिकोंडा के लिए इंस्टॉलर स्क्रिप्ट चुनना: पायथन 3 के साथ लिनक्स 64-बिट

इंस्टॉलर लिंक को आपके क्लिपबोर्ड पर कॉपी करने के साथ, हम इंस्टॉलर को डाउनलोड करने के लिए बस निम्न कमांड चला सकते हैं:

wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh

कमांड इंस्टॉलर स्क्रिप्ट को wget के माध्यम से डाउनलोड करेगा। फिर हम स्क्रिप्ट को बैश के साथ चला सकते हैं:

बैश के जरिए स्क्रिप्ट चलाना

आपको मिनिकोंडा लाइसेंस देखने और टर्मिनल में "हां" दर्ज करके इंस्टॉलेशन प्रक्रिया शुरू करने के लिए प्रेरित किया जाएगा।

नोट: इस इंस्टॉलेशन प्रक्रिया को पायथन के सिस्टम इंस्टॉल किए गए संस्करण की आवश्यकता हो सकती है, जिसका हम उपयोग नहीं करेंगे। लेकिन अगर इंस्टॉलर को पाइथन के कार्यशील संस्करण को खोजने में सक्षम नहीं होने के बारे में शिकायत है, तो हम sudo apt install python3 चलाकर इसे स्थापित कर सकते हैं।

स्थापना के बाद के मुद्दों से निपटना

Windows: यह देखते हुए कि हम PowerShell का उपयोग कर रहे हैं, हमें पहले PowerShell के उपयोगकर्ता के लिए conda को इनिशियलाइज़ करना होगा:

conda init शक्तियाँ

यह आदेश वास्तव में आपके PowerShell उपयोगकर्ता कॉन्फ़िगरेशन फ़ोल्डर के अंदर एक PowerShell कॉन्फ़िगरेशन फ़ाइल बनाता है, जो आमतौर पर ~ \ Documents \ WindowsPowerShell \ profile.ps1 के अंदर होता है, और, मेरे मामले में, कॉन्फ़िगरेशन फ़ाइल में निम्न कोड डालता है:

# ब्रेक्शन कोंडा इनिशियलाइज़ # !! इस ब्लॉक के भीतर सामग्री 'कोंडा इनिट' द्वारा प्रबंधित की जाती है !!
(& "C: \ Users \ Spencer \ scoop \ apps \ miniconda3 \ current \ Scripts \ conda.exe" "shell.powershell" "हुक" | आउट-स्ट्रिंग | आह्वान-अभिव्यक्ति
#endregion

बंद करें और PowerShell को फिर से खोलने के लिए मिनिकोंडा का प्रभाव देखें:

पॉवरशेल में मिनिकोंडा

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

आप मिनिकोंडा के बिन और टूल कोंडा को स्वयं यहां पा सकते हैं: ~ / miniconda3 / bin। हमें अपने शेल की कॉन्फ़िगरेशन फ़ाइल को संपादित करके मैन्युअल रूप से मिनिकोंडा उदाहरण के लिए प्रवेश करना होगा। (यह zsh के लिए ~ / .zshrc और मछली के लिए ~ / .config / मछली / config.fish होगा।)

निम्नलिखित कमांड को पूर्ण पथ द्वारा निष्पादित कंडा को लागू करके चलाएं:

~ / miniconda3 / bin / conda init {THE_SHELL_YOU_USE}
अपने पूर्ण मार्ग से

मेरे मामले में, कोंडा इनिट मछली ने वास्तव में मेरे शेल के विन्यास में निम्नलिखित सामग्री को जोड़ा:

# >>> कोंडा इनिशियलाइज़ >>> # !! इस ब्लॉक के भीतर सामग्री 'कोंडा इनिट' द्वारा प्रबंधित की जाती है !!
eval / home / spencer / miniconda3 / bin / conda "shell.fish" "hook" $ argv | स्रोत
# <<< कॉन्डा इनिशियलाइज़ <<

बंद करें फिर मिनिकोंडा को प्रभावी देखने के लिए टर्मिनल को फिर से खोलें:

पाठ

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

conda config --set auto_activate_base झूठा

हमारी परियोजना का प्रबंधन करने के लिए कोंडा का उपयोग करना

Conda स्थापित करने के बाद, हम इसका उपयोग करेंगे:

  • हमारे सरल मशीन लर्निंग प्रोजेक्ट को होस्ट करने के लिए एक नया वर्चुअल वातावरण बनाएं
  • हमारे अनुकूल पड़ोस मशीन सीखने के ढांचे को स्थापित करें: TensorFlow और Keras, हमारे आभासी वातावरण के अंदर
  • मशीन लर्निंग कोड लिखने और विकसित करने के लिए हमारे अत्यंत उपयोगी वैज्ञानिक नोटबुक को स्थापित करें: जिपर नोटबुक
  • ...

कुछ कमांड की मदद से। आएँ शुरू करें।

एक नया आभासी वातावरण बनाना

सब कुछ से पहले, आइए एक फ़ोल्डर बनाएं जिसमें हमारी सभी कोड फाइलें हों।

# एक निर्देशिका बनाना, जिसे प्रतिकूल-आक्रमण mkdir adversarial-attack कहते हैं
# निर्देशिका cd प्रतिकूल-हमलों में नेविगेट करना

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

हमारे प्रोजेक्ट फ़ोल्डर की जड़ में एक पर्यावरण नाम की फाइल बनाएँ। और अंदर, हमें परिभाषित करने की आवश्यकता होगी:

  • हमारे पर्यावरण का नाम: नाम
  • कौन सा चैनल कोंडा से हमारी निर्भरता स्थापित करेगा: चैनल
  • कौन सी निर्भरता वास्तव में कॉनडा स्थापित करेगी: निर्भरता

दिन के अंत में, हमारा पर्यावरण। कुछ इस तरह होगा:

नाम: प्रतिकूल-आक्रमण चैनल: - चूक निर्भरताएँ: - अजगर - तन्यताप्रवाह - सुन्न - matplotlib - pylint - autopep8 - नोटबुक
environment.yml

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

conda env create --file environment.yml

फिर, अपने आभासी वातावरण को सफलतापूर्वक बनाने के बाद, हम इसे सक्रिय कर सकते हैं:

conda adversarial-attack # या आपके पर्यावरण नाम को सक्रिय करता है

और अगर आप अपने वातावरण पर निर्भरता जोड़ना चाहते हैं, तो बस इसे सीधे environment.yml फ़ाइल में जोड़ें, और अपने पर्यावरण को इसके साथ अपडेट करें:

conda env update --file environment.yml

इसके साथ निष्क्रिय करें:

conda निष्क्रिय

जयुपर नोटबुक चल रहा है

कमांड लाइन से जयुपर नोटबुक चलाएँ:

# एक ही समय में डिफ़ॉल्ट ब्राउज़र लॉन्च करना, या ... ज्यूपिटर नोटबुक
# केवल नोटबुक सर्वर लॉन्च करना (जब WSL के अंदर चल रहा हो) ज्यूपिटर नोटबुक --नो-ब्राउज़र
जुपिटर नोटबुक लॉन्च करना और इसे क्रोम से एक्सेस करना
नोट: डब्लूएसएल के अंदर चलने पर, कमांड ज्यूपिटर नोटबुक वास्तव में विंडोज के अंदर डिफ़ॉल्ट ब्राउजर को इनवॉइस करने की कोशिश करता है लेकिन दुखद रूप से विफल हो जाता है। हम -नो-ब्राउज़र कमांड जोड़ने की सलाह देते हैं और URL को मैन्युअल रूप से कॉपी करते हैं।

हमारे कार्यक्षेत्र के रूप में वीएस कोड का उपयोग करना

वीएस कोड एक अद्भुत कोड संपादक है जिसे हम अपने मुख्य पायथन विकास वातावरण के रूप में उपयोग कर सकते हैं। व्यक्तिगत रूप से, मेरे पास लगभग हर प्रोजेक्ट के लिए VS कोड का उपयोग होता है, चाहे वह Rust हो, Go, Node.js या कुछ और। यदि आप WSL का उपयोग करने का प्रयास कर रहे हैं, तो अधिक है, आप दूरस्थ - WSL नामक एक प्लगइन का उपयोग करके अपने उबंटू WSL वातावरण पर अपने Windows पक्ष VS कोड को हुक कर सकते हैं। अधिक जानकारी के लिए यहाँ देखें: WSL में moreDeveloping | WSVisual Studio Code - Windows पर WSL के साथ देव।

फिर, एनाकोंडा एक्सटेंशन पैक स्थापित करें, जिसमें आवश्यक पायथन एक्सटेंशन की एक प्रति, और YAML के लिए भाषा समर्थन शामिल है।

वीएस कोड एनाकोंडा एक्सटेंशन पैक

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

एक प्रो की तरह वीएस कोड के अंदर सीधे ज्यूपिटर नोटबुक चल रहा है!

बस इतना ही। यह ट्यूटोरियल मूल रूप से एक एनाकोंडा विकास पर्यावरण की स्थापना करते समय आपको सभी की आवश्यकता होगी, और environment.yml का उपयोग करते हुए, हम आसानी से विभिन्न ओएस और प्लेटफार्मों में हमारे पर्यावरण को स्थानांतरित करने में सक्षम होंगे। पढ़ने के लिए धन्यवाद।

यह सभी देखें

मैं पहले से ही HTML, CSS, जावास्क्रिप्ट और jQuery को कुछ विस्तार से जानता हूं। मैं इसमें वेब डेवलपर और विशेषज्ञता कैसे बनना शुरू कर सकता हूं? मैं कहां से शुरू कर सकता हूं?मैं everylastdrop.co.uk जैसी वेबसाइट कैसे बना सकता हूं? आप एक गतिशील प्रोग्रामिंग एल्गोरिदम कैसे विकसित कर सकते हैं? एक फ्रीलांस लेखक (शुरुआती) प्रति शब्द कितना चार्ज कर सकता है? कैसे उबले हुए अंडे नहीं सूंघेमैं लंबी अवधि की परियोजनाओं के लिए भारत में सबसे अच्छी PHP वेब विकास कंपनी कैसे खोज सकता हूं? मुझे iOS के विकास में दिलचस्पी है, मुझे कोडिंग में शून्य ज्ञान या अनुभव है, कैसे शुरू करने के बारे में कोई सलाह? क्या तुम लोग मुझे यह कदम उठाने के लिए प्रोत्साहित करते हो?कंप्यूटर का बहुत कम ज्ञान रखने वाला व्यक्ति कोड कैसे सीख सकता है?