tensorflow::ops::FractionalAvgPool

#include <nn_ops.h>

ทำการรวมค่าเฉลี่ยแบบเศษส่วนบนข้อมูลป้อนเข้า

สรุป

การหาค่าเฉลี่ยแบบเศษส่วน (Fractional average pooling) คล้ายกับการหาค่าสูงสุดแบบเศษส่วน (Fractional max pooling) ในขั้นตอนการสร้างพื้นที่พูลลิ่ง ความแตกต่างเพียงอย่างเดียวคือ หลังจากสร้างพื้นที่พูลลิ่งแล้ว จะทำการหาค่าเฉลี่ยแทนการหาค่าสูงสุดในแต่ละพื้นที่พูลลิ่ง

ข้อโต้แย้ง:

  • ขอบเขต: วัตถุ ขอบเขต
  • ค่า: 4 มิติที่มีรูปร่าง [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 เรื่อง Fractional Max-Pooling เพื่อศึกษาความแตกต่างระหว่างการสุ่มเทียมและการสุ่มแบบสุ่ม
  • การทับซ้อน: เมื่อตั้งค่าเป็น True หมายความว่าเมื่อทำการพูล ค่าที่บริเวณขอบเขตของเซลล์พูลที่อยู่ติดกันจะถูกใช้โดยทั้งสองเซลล์ ตัวอย่างเช่น:

index 0 1 2 3 4

value 20 5 16 3 7

ถ้าลำดับการรวมข้อมูลคือ [0, 2, 4] แล้ว 16 ที่ดัชนี 2 จะถูกใช้สองครั้ง ผลลัพธ์ที่ได้จะเป็น [41/3, 26/3] สำหรับการรวมข้อมูลแบบเฉลี่ยเศษส่วน

  • กำหนดได้แน่นอน: เมื่อตั้งค่าเป็น True จะใช้ขอบเขตการพูลแบบคงที่เมื่อวนซ้ำผ่านโหนด FractionalAvgPool ในกราฟการคำนวณ โดยส่วนใหญ่ใช้ในการทดสอบหน่วยเพื่อให้ FractionalAvgPool เป็นแบบกำหนดได้แน่นอน
  • seed: หาก seed หรือ seed2 ตัวใดตัวหนึ่งถูกตั้งค่าเป็นค่าที่ไม่ใช่ศูนย์ ตัวสร้างเลขสุ่มจะเริ่มต้นด้วยค่า seed ที่กำหนดให้ มิฉะนั้น จะเริ่มต้นด้วยค่า seed แบบสุ่ม
  • seed2: เมล็ดพันธุ์ที่สองเพื่อหลีกเลี่ยงการชนกันของเมล็ดพันธุ์

การส่งคืนสินค้า:

  • Output : เทนเซอร์ผลลัพธ์หลังจากทำการพูลลิ่งเฉลี่ยแบบเศษส่วน
  • Output row_pooling_sequence: ลำดับการรวมแถว (row pooling sequence) ที่จำเป็นสำหรับการคำนวณเกรเดียนต์
  • Output col_pooling_sequence: ลำดับการรวมคอลัมน์ ซึ่งจำเป็นสำหรับการคำนวณเกรเดียนต์

ตัวสร้างและตัวทำลาย

FractionalAvgPool (const :: tensorflow::Scope & scope, :: tensorflow::Input value, const gtl::ArraySlice< float > & pooling_ratio)
FractionalAvgPool (const :: tensorflow::Scope & scope, :: tensorflow::Input value, const gtl::ArraySlice< float > & pooling_ratio, const FractionalAvgPool::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:: FractionalAvgPool:: Attrs

ตัวเลือกการตั้งค่าแอตทริบิวต์สำหรับ FractionalAvgPool

คุณลักษณะสาธารณะ

ลำดับการรวมคอลัมน์

::tensorflow::Output col_pooling_sequence

การดำเนินการ

Operation operation

เอาต์พุต

::tensorflow::Output output

ลำดับการพูลแถว

::tensorflow::Output row_pooling_sequence

หน้าที่สาธารณะ

เศษส่วนเฉลี่ยพูล

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

เศษส่วนเฉลี่ยพูล

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

ฟังก์ชันคงที่สาธารณะ

กำหนดได้แน่นอน

Attrs Deterministic(
  bool x
)

ทับซ้อนกัน

Attrs Overlapping(
  bool x
)

สุ่มเทียม

Attrs PseudoRandom(
  bool x
)

เมล็ดพันธุ์

Attrs Seed(
  int64 x
)

เมล็ดพันธุ์2

Attrs Seed2(
  int64 x
)