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

#include <data_flow_ops.h>

สร้าง TensorArray สำหรับจัดเก็บการไล่ระดับสีของค่าในแฮนเดิลที่กำหนด

สรุป

หากมีการไล่ระดับสี TensorArray ที่กำหนดอยู่แล้ว ให้ส่งคืนการอ้างอิงไปยังการไล่ระดับสีนั้น

ล็อกขนาดของ TensorArray ดั้งเดิมโดยปิดใช้การตั้งค่าสถานะขนาดไดนามิก

หมายเหตุเกี่ยวกับอินพุต flow_in:

หมายเลขอ้างอิง flow_in บังคับให้การดำเนินการค้นหาการไล่ระดับสีเกิดขึ้นหลังจากการดำเนินการอื่นบางอย่างเกิดขึ้นเท่านั้น ตัวอย่างเช่น เมื่อ Forward TensorArray มีขนาดแบบไดนามิก การเขียนไปยัง TensorArray นี้อาจปรับขนาดวัตถุ การไล่ระดับสี TensorArray มีขนาดคงที่โดยอิงตามขนาดของ TensorArray ข้างหน้าเมื่อการดำเนินการนี้ดำเนินการ นอกจากนี้ ขนาดของ TensorArray ที่ส่งต่อจะถูกหยุดโดยการเรียกนี้ ด้วยเหตุนี้ โฟลว์จึงถูกใช้เพื่อให้แน่ใจว่าการเรียกเพื่อสร้างการไล่ระดับสี TensorArray จะเกิดขึ้นหลังจากดำเนินการเขียนทั้งหมดแล้วเท่านั้น

ในกรณีของ TensorArrays ที่มีขนาดไดนามิก การคำนวณการไล่ระดับสีควรทำเฉพาะกับการดำเนินการอ่านที่เชื่อมโยงกันผ่านโฟลว์เท่านั้น ซึ่งจะเกิดขึ้นหลังจากดำเนินการเขียนทั้งหมดแล้วเท่านั้น วิธีนี้จะทำให้ทราบขนาดสุดท้ายของ TensorArray ข้างหน้าเมื่อมีการเรียกการดำเนินการนี้

หมายเหตุเกี่ยวกับแอตทริบิวต์แหล่งที่มา:

การเรียกการไล่ระดับ TensorArray ใช้วัตถุ TensorArray แบบสะสม หากมีการคำนวณและเรียกใช้การไล่ระดับสีหลายรายการในเซสชันเดียวกัน โหนดการไล่ระดับสีหลายรายการอาจไหลผ่านตัวสะสม TensorArray เดียวกันโดยไม่ตั้งใจ การนับสองครั้งนี้และโดยทั่วไปจะทำลายโฟลว์การไล่ระดับสี ของ TensorArray

วิธีแก้ไขคือการระบุว่าการไล่ระดับสีใดที่เรียกการไล่ระดับสี TensorArray นี้โดยเฉพาะ ซึ่งดำเนินการโดยการระบุสตริงที่ไม่ซ้ำกัน (เช่น "gradients", "gradients_1", ... ) จากชื่อของ Tensor การไล่ระดับสีอินพุต สตริงนี้ใช้เป็นคำต่อท้ายเมื่อสร้างวัตถุไล่ระดับสี TensorArray ที่นี่ ( source ของแอตทริบิวต์ )

source ของแอตทริบิวต์จะถูกเพิ่มเป็นส่วนต่อท้ายชื่อของ TensorArray ข้างหน้าเมื่อดำเนินการสร้าง/ค้นหา เพื่อให้การคำนวณการไล่ระดับสีแยกกันแต่ละรายการได้รับตัวสะสม TensorArray ของตัวเอง

ข้อโต้แย้ง:

  • ขอบเขต: วัตถุ ขอบเขต
  • ที่จับ: ที่จับสำหรับ TensorArray ไปข้างหน้า
  • flow_in: สเกลาร์โฟลตที่บังคับใช้การผูกมัดการดำเนินการที่เหมาะสม
  • แหล่งที่มา: สตริงแหล่งที่มาของการไล่ระดับสี ใช้ในการตัดสินใจว่า TensorArray ไล่ ระดับสีใดที่จะส่งคืน

ผลตอบแทน:

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

TensorArrayGrad (const :: tensorflow::Scope & scope, :: tensorflow::Input handle, :: tensorflow::Input flow_in, StringPiece source)

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

flow_out
grad_handle
operation

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

ไหลออก

::tensorflow::Output flow_out

grad_handle

::tensorflow::Output grad_handle

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

Operation operation

งานสาธารณะ

TensorArrayGrad

 TensorArrayGrad(
  const ::tensorflow::Scope & scope,
  ::tensorflow::Input handle,
  ::tensorflow::Input flow_in,
  StringPiece source
)