ادغام حداکثر کسری را روی ورودی انجام می دهد.
ماکسیمم جمع بندی فراکشنال کمی متفاوت از جمع حداکثری معمولی است. در ادغام حداکثر معمولی، یک مجموعه ورودی را با در نظر گرفتن حداکثر مقدار N x N زیربخش های مجموعه کوچکتر می کنید (اغلب 2x2)، و سعی می کنید مجموعه را با ضریب N کاهش دهید، جایی که N یک عدد صحیح است. ادغام حداکثر کسری، همانطور که ممکن است از کلمه "کسری" انتظار داشته باشید، به این معنی است که نسبت کاهش کلی N لازم نیست یک عدد صحیح باشد.
اندازه مناطق ادغام به طور تصادفی ایجاد می شود اما نسبتاً یکنواخت است. به عنوان مثال، اجازه دهید به بعد ارتفاع و محدودیتهای موجود در لیست ردیفهایی که مرزهای استخر هستند نگاه کنیم.
ابتدا موارد زیر را تعریف می کنیم:
1. input_row_length : تعداد سطرها از مجموعه ورودی 2. output_row_length: که از ورودی کوچکتر خواهد بود 3. alpha = input_row_length / output_row_length: نسبت کاهش ما 4. K = کف (آلفا) 5. row_pooling: لیست ردیف های مرزی استخر
سپس، row_pooling_sequence باید این موارد را برآورده کند:
1. a[0] = 0: اولین مقدار دنباله 0 است 2. a[end] = input_row_length: آخرین مقدار دنباله اندازه 3 است. K <= (a[i+1] - a[ i]) <= K+1 : همه فواصل K یا K+1 اندازه 4 هستند.
برای جزئیات بیشتر در مورد ادغام حداکثر کسری، به این مقاله مراجعه کنید: [بنجامین گراهام، کسری حداکثر پولینگ] (http://arxiv.org/abs/1412.6071)
کلاس های تو در تو
کلاس | FractionalMaxPool.Options | ویژگی های اختیاری برای FractionalMaxPool |
ثابت ها
رشته | OP_NAME | نام این عملیات، همانطور که توسط موتور هسته TensorFlow شناخته می شود |
روش های عمومی
خروجی < TINT64 > | colPoolingSequence () دنباله ادغام ستون، برای محاسبه گرادیان مورد نیاز است. |
استاتیک <T TNumber > FractionalMaxPool <T> را گسترش می دهد | ایجاد (حوزه دامنه ، مقدار عملوند <T>، List<Float> PoolingRatio، گزینهها... گزینهها) روش Factory برای ایجاد کلاسی که یک عملیات FractionalMaxPool جدید را بسته بندی می کند. |
استاتیک FractionalMaxPool.Options | قطعی (قطعی بولی) |
خروجی <T> | خروجی () تانسور خروجی پس از ادغام حداکثر کسری. |
استاتیک FractionalMaxPool.Options | همپوشانی (همپوشانی بولی) |
استاتیک FractionalMaxPool.Options | شبه تصادفی (شبه تصادفی بولی) |
خروجی < TINT64 > | rowPooling Sequence () دنباله ادغام ردیف، برای محاسبه گرادیان مورد نیاز است. |
استاتیک FractionalMaxPool.Options | دانه (دانه بلند) |
استاتیک FractionalMaxPool.Options | دانه 2 (دانه بلند 2) |
روش های ارثی
ثابت ها
رشته نهایی ثابت عمومی OP_NAME
نام این عملیات، همانطور که توسط موتور هسته TensorFlow شناخته می شود
روش های عمومی
عمومی ایستا FractionalMaxPool <T> ایجاد ( scope scope، عملوند <T> مقدار، List<Float> poolingRatio، Options... گزینه ها)
روش Factory برای ایجاد کلاسی که یک عملیات FractionalMaxPool جدید را بسته بندی می کند.
مولفه های
محدوده | محدوده فعلی |
---|---|
ارزش | 4-بعدی با شکل «[دسته، ارتفاع، عرض، کانال]». |
نسبت ترکیبی | نسبت ادغام برای هر بعد «مقدار»، در حال حاضر فقط از بعد ردیف و ستون پشتیبانی می کند و باید >= 1.0 باشد. برای مثال، یک نسبت ادغام معتبر مانند [1.0، 1.44، 1.73، 1.0] به نظر می رسد. اولین و آخرین عنصر باید 1.0 باشد زیرا ما اجازه ادغام در ابعاد دسته ای و کانال ها را نمی دهیم. 1.44 و 1.73 به ترتیب نسبت ادغام در ابعاد ارتفاع و عرض هستند. |
گزینه ها | مقادیر ویژگی های اختیاری را حمل می کند |
برمی گرداند
- یک نمونه جدید از FractionalMaxPool
عمومی Static FractionalMaxPool.Options deterministic (قطری بولی)
مولفه های
قطعی | هنگامی که روی True تنظیم می شود، هنگام تکرار بر روی یک گره FractionalMaxPool در نمودار محاسباتی، از یک منطقه ادغام ثابت استفاده می شود. عمدتاً در آزمون واحد برای قطعی کردن FractionalMaxPool استفاده می شود. |
---|
استاتیک عمومی FractionalMaxPool.گزینه ها با هم همپوشانی دارند (همپوشانی بولی)
مولفه های
با هم تداخل دارند | وقتی روی True تنظیم می شود، به این معنی است که هنگام ادغام، مقادیر در مرز سلول های ادغام مجاور توسط هر دو سلول استفاده می شود. مثلا: «شاخص 0 1 2 3 4». "ارزش 20 5 16 3 7". اگر دنباله ادغام [0، 2، 4] باشد، 16 در شاخص 2 دو بار استفاده خواهد شد. نتیجه [20، 16] برای ادغام حداکثر کسری خواهد بود. |
---|
استاتیک عمومی FractionalMaxPool.گزینه های شبه تصادفی (شبه تصادفی بولی)
مولفه های
شبه تصادفی | وقتی روی True تنظیم شود، دنباله ادغام را به صورت شبه تصادفی تولید می کند، در غیر این صورت، به صورت تصادفی. کاغذ [Benjamin Graham, Fractional Max-Pooling] (http://arxiv.org/abs/1412.6071) را برای تفاوت بین شبه تصادفی و تصادفی بررسی کنید. |
---|
عمومی Static FractionalMaxPool.Options seed (Long seed)
مولفه های
دانه | اگر seed یا seed2 غیر صفر باشد، مولد اعداد تصادفی توسط دانه داده شده بذر می شود. در غیر این صورت، توسط یک بذر تصادفی بذر می شود. |
---|
عمومی Static FractionalMaxPool.Options seed2 (Long seed2)
مولفه های
دانه 2 | دانه دوم برای جلوگیری از برخورد دانه. |
---|