CNN में फ़िल्टर आकार, स्ट्राइड्स आदि चुनना?


12

मैं स्टैनफोर्ड के CS231N व्याख्यानों को देख रहा हूं और मैं CNN आर्किटेक्चर में कुछ मुद्दों पर अपना सिर लपेटने की कोशिश कर रहा हूं। मैं जो समझने की कोशिश कर रहा हूं वह यह है कि क्या कनवल्शन फिल्टर साइज़ को चुनने के लिए कुछ सामान्य दिशा-निर्देश हैं और स्ट्राइड्स जैसी चीजें या यह एक विज्ञान से अधिक एक कला है?

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

जवाबों:


9

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

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

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

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

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

एक अच्छा पेपर जो वर्तमान आर्किटेक्चर पर संकेत प्रदान करता है और एक संरचित, व्यवस्थित तरीके से डिजाइन आयामों में से कुछ की भूमिका स्क्वीज़नेट है: 50x कम मापदंडों और <0.5 एमबी मॉडल आकार के साथ एलेक्सनेट-स्तरीय सटीकता । यह पहले बताए गए मॉडल में शुरू किए गए विचारों पर बनाता है।


1

यदि आप सीखने के समय में बेहतर सीखने पर विचार करते हैं, तो मैं इन कर्नेल और स्ट्राइड आकारों का सुझाव देना चाहता हूं;

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

स्ट्राइड साइज के लिए, मेरे लिए, छोटी स्ट्राइड इनपुट इमेज के महीन विवरण को कैप्चर करने में बेहतर होगी।

मेरे लिए, पूलिंग का लाभ यह है कि यह एक छवि की सबसे तेज विशेषताओं को निकालता है। सामान्य तौर पर, सबसे तेज विशेषताएं एक छवि के सबसे निचले स्तर के प्रतिनिधित्व की तरह दिखती हैं।

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