เทนเซอร์โฟลว์:: ปฏิบัติการ:: แบทช์ทูสเปซ

#include <array_ops.h>

BatchToSpace สำหรับเทนเซอร์ 4 มิติประเภท T

สรุป

นี่เป็นเวอร์ชันดั้งเดิมของ BatchToSpaceND ทั่วไปมากกว่า

จัดเรียง (สับเปลี่ยน) ข้อมูลจากแบทช์เป็นบล็อกข้อมูลเชิงพื้นที่ ตามด้วยการครอบตัด นี่คือการเปลี่ยนแปลงแบบย้อนกลับของ SpaceToBatch โดยเฉพาะอย่างยิ่ง สหกรณ์นี้จะส่งออกสำเนาของเทนเซอร์อินพุตโดยที่ค่าจากมิติ batch ถูกย้ายในบล็อกเชิงพื้นที่ไปยังมิติ height และ width ตามด้วยการครอบตัดตามมิติ height และ width

ข้อโต้แย้ง:

  • ขอบเขต: วัตถุ ขอบเขต
  • อินพุต: เทนเซอร์ 4 มิติที่มีรูปร่าง [batch*block_size*block_size, height_pad/block_size, width_pad/block_size, depth] โปรดทราบว่าขนาดแบทช์ของเทนเซอร์อินพุตจะต้องหารด้วย block_size * block_size
  • พืชผล: เทนเซอร์ 2 มิติของจำนวนเต็มไม่เป็นลบที่มีรูปร่าง [2, 2] โดยระบุจำนวนองค์ประกอบที่จะครอบตัดจากผลลัพธ์ระดับกลางทั่วทั้งมิติเชิงพื้นที่ดังนี้:
    crops = [[crop_top, crop_bottom], [crop_left, crop_right]]
    

ผลตอบแทน:

  • Output : 4-D พร้อมรูปทรง [batch, height, width, depth] โดยที่:
    height = height_pad - crop_top - crop_bottom
    width = width_pad - crop_left - crop_right
    

attr block_size ต้องมากกว่าหนึ่ง มันบ่งบอกถึงขนาดบล็อก

ตัวอย่างบางส่วน:

(1) สำหรับการป้อนรูปร่าง [4, 1, 1, 1] และ block_size ของ 2 ต่อไปนี้:

[[[[1]]], [[[2]]], [[[3]]], [[[4]]]]

เอาท์พุตเทนเซอร์มีรูปร่าง [1, 2, 2, 1] และค่า:

x = [[[[1], [2]], [[3], [4]]]]

(2) สำหรับการป้อนรูปร่าง [4, 1, 1, 3] และ block_size ของ 2 ต่อไปนี้:

[[[[1, 2, 3]]], [[[4, 5, 6]]], [[[7, 8, 9]]], [[[10, 11, 12]]]]

เอาท์พุตเทนเซอร์มีรูปร่าง [1, 2, 2, 3] และค่า:

x = [[[[1, 2, 3], [4, 5, 6]],
      [[7, 8, 9], [10, 11, 12]]]]

(3) สำหรับการป้อนรูปร่าง [4, 2, 2, 1] และ block_size ของ 2 ต่อไปนี้:

x = [[[[1], [3]], [[9], [11]]],
     [[[2], [4]], [[10], [12]]],
     [[[5], [7]], [[13], [15]]],
     [[[6], [8]], [[14], [16]]]]

เอาท์พุตเทนเซอร์มีรูปร่าง [1, 4, 4, 1] และค่า:

x = [[[[1],   [2],  [3],  [4]],
     [[5],   [6],  [7],  [8]],
     [[9],  [10], [11],  [12]],
     [[13], [14], [15],  [16]]]]

(4) สำหรับการป้อนรูปร่าง [8, 1, 2, 1] และ block_size ของ 2 ต่อไปนี้:

x = [[[[1], [3]]], [[[9], [11]]], [[[2], [4]]], [[[10], [12]]],
     [[[5], [7]]], [[[13], [15]]], [[[6], [8]]], [[[14], [16]]]]

เอาท์พุตเทนเซอร์มีรูปร่าง [2, 2, 4, 1] และค่า:

x = [[[[1], [3]], [[5], [7]]],
     [[[2], [4]], [[10], [12]]],
     [[[5], [7]], [[13], [15]]],
     [[[6], [8]], [[14], [16]]]]

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

BatchToSpace (const :: tensorflow::Scope & scope, :: tensorflow::Input input, :: tensorflow::Input crops, int64 block_size)

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

operation
output

งานสาธารณะ

node () const
::tensorflow::Node *
operator::tensorflow::Input () const
operator::tensorflow::Output () const

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

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

Operation operation

เอาท์พุท

::tensorflow::Output output

งานสาธารณะ

แบทช์ทูสเปซ

 BatchToSpace(
  const ::tensorflow::Scope & scope,
  ::tensorflow::Input input,
  ::tensorflow::Input crops,
  int64 block_size
)

โหนด

::tensorflow::Node * node() const 

ตัวดำเนินการ::tensorflow::อินพุต

 operator::tensorflow::Input() const 

ตัวดำเนินการ::tensorflow::เอาต์พุต

 operator::tensorflow::Output() const