از اینکه با Google I/O تنظیم کردید متشکریم. مشاهده همه جلسات در صورت تقاضا تماشا کنید

tensorflow :: ops :: استخر FractalMaxPool

#include <nn_ops.h>

حداکثر استخر کسری را روی ورودی انجام می دهد.

خلاصه

حداکثر استخر کسری با حداکثر تجمع معمول تفاوت کمی دارد. در حداکثر تجمع منظم ، شما با در نظر گرفتن حداکثر مقدار زیر مجموعه های کوچکتر N x N مجموعه (اغلب 2x2) ، مجموعه ورودی را کوچک می کنید و سعی می کنید مجموعه را با ضریب N کاهش دهید ، جایی که N یک عدد صحیح است. حداکثر تجمع کسری ، همانطور که ممکن است از کلمه "کسری" انتظار داشته باشید ، بدان معنی است که لازم نیست نسبت کلی کاهش N یک عدد صحیح باشد.

اندازه مناطق استخر به طور تصادفی تولید می شود اما نسبتاً یکنواخت است. به عنوان مثال ، بیایید به بعد ارتفاع ، و محدودیت های موجود در لیست ردیف هایی که مرز استخر خواهند بود ، نگاهی بیندازیم.

ابتدا موارد زیر را تعریف می کنیم:

  1. input_row_length: تعداد ردیف های مجموعه ورودی
  2. output_row_length: که کوچکتر از ورودی خواهد بود
  3. آلفا = طول_برای_ ورودی / طول_برای_ خروجی: نسبت کاهش ما
  4. K = طبقه (آلفا)
  5. row_pooling_sequence: این لیست نتایج ردیفهای مرزی استخر است

سپس ، row_pooling_ نتیجه باید برآورده کند:

  1. a [0] = 0: اولین مقدار دنباله 0 است
  2. a [end] = input_row_length: آخرین مقدار دنباله اندازه است
  3. K <= (a [i + 1] - a [i]) <= K + 1: تمام فواصل اندازه K یا K + 1 هستند
  4. length (row_pooling_ پیامد) = output_row_length + 1

برای جزئیات بیشتر در مورد حداکثر تجمع کسری ، به این مقاله مراجعه کنید: بنجامین گراهام ، حداکثر تجمع کسری

استدلال ها:

  • دامنه: یک شی Sc Scope
  • مقدار: 4-D با شکل [batch, height, width, channels] .
  • pooling_ratio: نسبت جمع کردن برای هر بعد از value ، در حال حاضر فقط از بعد سطر و ستون پشتیبانی می کند و باید> = 1.0 باشد. به عنوان مثال ، یک نسبت استخر معتبر به نظر می رسد [1.0 ، 1.44 ، 1.73 ، 1.0]. اولین و آخرین عناصر باید 1.0 باشند زیرا ما اجازه نمی دهیم در ابعاد دسته ای و کانال ها جمع شوند. 1.44 و 1.73 به ترتیب نسبت جمع شدن در ابعاد ارتفاع و عرض هستند.

ویژگی های اختیاری (به Attrs مراجعه کنید):

  • pseudo_random: اگر روی True تنظیم شود ، توالی استخر را به صورت شبه تصادفی تولید می کند ، در غیر این صورت ، به صورت تصادفی. مقاله Benjamin Graham، Fractal Max-Pooling را برای تفاوت بین شبه تصادفی و تصادفی بررسی کنید.
  • همپوشانی: وقتی روی True تنظیم می شود ، به این معنی است که هنگام جمع کردن ، مقادیر موجود در مرز سلولهای جمع کننده مجاور توسط هر دو سلول استفاده می شود. مثلا:

index 0 1 2 3 4

value 20 5 16 3 7

اگر توالی استخر [0 ، 2 ، 4] باشد ، در شاخص 2 از 16 ، دو بار استفاده می شود. نتیجه برای جمع حداکثر کسری [20 ، 16] خواهد بود.

  • deterministic: وقتی روی True تنظیم شود ، هنگام تکرار از یک گره FactionalMaxPool در نمودار محاسبه ، از یک منطقه ثابت جمع استفاده می شود. عمدتا در آزمون واحد برای تعیین قطعی FactionalMaxPool استفاده می شود.
  • seed: اگر بذر یا seed2 غیر صفر تنظیم شود ، مولد عدد تصادفی توسط بذر داده شده بذر می شود. در غیر این صورت ، توسط یک بذر تصادفی بذر می شود.
  • seed2: دانه دوم برای جلوگیری از برخورد بذر.

بازده:

  • Output خروجی: تانسور خروجی پس از تجمع حداکثر کسری.
  • row_pooling_ نتیجه Output : دنباله جمع شدن سطر ، برای محاسبه گرادیان لازم است.
  • Output col_pooling_ نتیجه: دنباله جمع شدن ستون ، برای محاسبه گرادیان لازم است.

سازندگان و ویرانگران

FractionalMaxPool (const :: tensorflow::Scope & scope, :: tensorflow::Input value, const gtl::ArraySlice< float > & pooling_ratio)
FractionalMaxPool (const :: tensorflow::Scope & scope, :: tensorflow::Input value, const gtl::ArraySlice< float > & pooling_ratio, const FractionalMaxPool::Attrs & attrs)

صفات عمومی

col_pooling_sequence
operation
output
row_pooling_sequence

توابع استاتیک عمومی

Deterministic (bool x)
Overlapping (bool x)
PseudoRandom (bool x)
Seed (int64 x)
Seed2 (int64 x)

سازه ها

tensorflow :: ops :: FactionalMaxPool :: Attrs

تنظیم کننده های ویژگی اختیاری برای FactionalMaxPool .

صفات عمومی

col_pooling_ نتیجه

::tensorflow::Output col_pooling_sequence

عمل

Operation operation

خروجی

::tensorflow::Output output

row_pooling_ پیامد

::tensorflow::Output row_pooling_sequence

کارکردهای عمومی

استخر FractalMaxPool

 FractionalMaxPool(
  const ::tensorflow::Scope & scope,
  ::tensorflow::Input value,
  const gtl::ArraySlice< float > & pooling_ratio
)

استخر FractalMaxPool

 FractionalMaxPool(
  const ::tensorflow::Scope & scope,
  ::tensorflow::Input value,
  const gtl::ArraySlice< float > & pooling_ratio,
  const FractionalMaxPool::Attrs & attrs
)

توابع استاتیک عمومی

مصمم

Attrs Deterministic(
  bool x
)

با هم تداخل دارند

Attrs Overlapping(
  bool x
)

شبه تصادفی

Attrs PseudoRandom(
  bool x
)

بذر

Attrs Seed(
  int64 x
)

دانه 2

Attrs Seed2(
  int64 x
)