11 / 24 · अवधारणा
ReLU और मैक्स पूलिंग जोड़ना
uint8 आउटपुट शून्य बिंदु 100 में [98,103;101,97] पर ReLU और 2×2 मैक्स पूलिंग करें।
पाठ पढ़ना मुफ़्त है। प्रगति सेव करने के लिए नामांकन करें।
बाद के प्रसंस्करण चरण शामिल करें
इन्फ़रेंस कन्वोल्यूशन के बाद जारी रह सकता है। ReLU हर वास्तविक मान और शून्य में बड़ा चुनता है। मैक्स पूलिंग स्थानिक विंडो का सबसे बड़ा मान चुनती है। पहला तत्ववार; दूसरा स्थानिक आकार बदलता है और अलग पूर्णता शर्त चाहिए। हमारा पथ पुनः क्वांटाइज़ करता है, ReLU लगाता है, फिर बिना पैडिंग 2×2 मैक्स पूलिंग और स्ट्राइड दो लेता है। फ़्लोर नियम अधूरी अंतिम पंक्ति या स्तंभ छोड़ता है।
कच्चे क्वांटाइज़ आउटपुट में वास्तविक शून्य, आउटपुट शून्य बिंदु zy है। धनात्मक स्केल क्रम रखता है, इसलिए ReLU, max(q,zy) लेता है। zy=128 में uint8 कोड की शाब्दिक शून्य से तुलना ऋणात्मक वास्तविक मान गलत रखेगी।
श्रृंखला का उदाहरण
संचायक [−2,4;6,−8], गुणक 0.5 और शून्य बिंदु शून्य से [−1,2;3,−4]। ReLU से [0,2;3,0] और पूलिंग तीन चुनती है। स्थानिक डाउनसैंपलिंग और संख्यात्मक रिस्केलिंग अलग विचार हैं। मैक्स पूलिंग मौजूदा कोड चुनती है और इस अभ्यास में उसका स्केल रखती है।
शून्य बिंदु 128 में [126,132;134,120] कोड ReLU के बाद [128,132;134,128] और पूल कोड 134 हैं। भंडारण रूप बदलने पर भी संदर्भ वास्तविक शून्य रहता है। औसत पूलिंग में भाग और राउंडिंग होगी, इसलिए इस कार्यान्वयन के बराबर नहीं।
ऋणात्मक पूर्व-ReLU विंडो [−8,−5;−3,−6] का अधिकतम −3 है। पैड सीमा पर गलत शून्य जोड़ने से अनुपस्थित नमूना जीतता है। पैड कार्यान्वयन उस स्थान को बाहर रखे या तय न्यूनतम ले। चलने वाला पूलिंग फ़ंक्शन पैडिंग नहीं समर्थित करता।
चरण मिलाने से मध्यवर्ती मेमोरी ट्रैफ़िक घट सकता है, लेकिन सत्यापन के लिए दिखने वाले मान रखें। संचायक, पुनः क्वांटाइज़ कोड, सक्रिय मान और पूल आउटपुट अलग तुलना करें। 4×4 इनपुट चार पूल मान; 3×3 एक देता है, बताए फ़्लोर नियम में। अधूरी विंडो नीति परीक्षण में लिखें। प्राथमिक परिभाषाएँ ONNX Relu और ONNX MaxPool में हैं।
खुद आज़माएँ
uint8 आउटपुट शून्य बिंदु 100 में [98,103;101,97] पर ReLU और 2×2 मैक्स पूलिंग करें।
व्याख्या पढ़ें
ReLU कोड 100 पर रोककर [100,103;101,100] बनाता है। मैक्स पूलिंग 103 चुनती है और आउटपुट स्केल रखती है।