Conv2d

Conv2d คลาสสุดท้ายสาธารณะ

คำนวณการบิดแบบ 2 มิติโดยกำหนดเทนเซอร์ 'อินพุต' และ 'ตัวกรอง' แบบ 4 มิติ

เมื่อพิจารณาเทนเซอร์อินพุตของรูปร่าง `[batch, in_height, in_width, in_channels]` และตัวกรอง / เทนเซอร์เคอร์เนลของรูปร่าง `[filter_height, filter_width, in_channels, out_channels]` op นี้จะดำเนินการต่อไปนี้:

1. ทำให้ตัวกรองเรียบเป็นเมทริกซ์ 2 มิติโดยมีรูปร่าง `[filter_height * filter_width * in_channels, output_channels]` 2. แยกแพตช์รูปภาพจากเทนเซอร์อินพุตเพื่อสร้างเทนเซอร์ เสมือน ของรูปร่าง `[แบทช์, out_height, out_width, filter_height * filter_width * in_channels]` 3. สำหรับแต่ละแพตช์ ให้คูณขวากับเมทริกซ์ตัวกรองและเวกเตอร์แพตช์รูปภาพ

โดยละเอียดด้วยรูปแบบ NHWC เริ่มต้น

เอาท์พุต[b, i, j, k] = sum_{di, dj, q} อินพุต[b, ก้าวย่าง[1] * i + di, ก้าวย่าง[2] * j + dj, q] * ตัวกรอง[di, dj, คิว, เค]

ต้องมี `ก้าว[0] = ก้าว[3] = 1` สำหรับกรณีที่พบบ่อยที่สุดของการก้าวในแนวนอนและจุดยอดเดียวกัน `การก้าว = [1, ก้าวก้าว, ก้าวย่าง, 1]`

คลาสที่ซ้อนกัน

ระดับ Conv2d.ตัวเลือก แอตทริบิวต์เพิ่มเติมสำหรับ Conv2d

ค่าคงที่

สตริง OP_NAME ชื่อของ op นี้ ซึ่งรู้จักกันในชื่อของเอ็นจิ้นหลัก TensorFlow

วิธีการสาธารณะ

เอาท์พุต <T>
เป็นเอาท์พุต ()
ส่งกลับค่าแฮนเดิลสัญลักษณ์ของเทนเซอร์
คงที่ <T ขยาย TNumber > Conv2d <T>
สร้าง (ขอบเขต ขอบเขต , อินพุต Operand <T>, ตัวกรอง Operand <T>, รายการ <Long> ก้าวย่าง, การขยายสตริง, ตัวเลือก... ตัวเลือก)
วิธีการจากโรงงานเพื่อสร้างคลาสที่รวมการดำเนินการ Conv2d ใหม่
Conv2d.Options แบบคงที่
dataFormat (สตริง dataFormat)
Conv2d.Options แบบคงที่
การขยาย (รายการ<Long> การขยาย)
Conv2d.Options แบบคงที่
explarPaddings (รายการ <Long> explarPaddings)
เอาท์พุต <T>
เอาท์พุท ()
เทนเซอร์ 4 มิติ
Conv2d.Options แบบคงที่
useCudnnOnGpu (การใช้บูลีน CudnnOnGpu)

วิธีการสืบทอด

ค่าคงที่

สตริงสุดท้ายแบบคงที่สาธารณะ OP_NAME

ชื่อของ op นี้ ซึ่งรู้จักกันในชื่อของเอ็นจิ้นหลัก TensorFlow

ค่าคงที่: "Conv2D"

วิธีการสาธารณะ

เอาท์ พุท สาธารณะ <T> asOutput ()

ส่งกลับค่าแฮนเดิลสัญลักษณ์ของเทนเซอร์

อินพุตสำหรับการดำเนินการ TensorFlow คือเอาต์พุตของการดำเนินการ TensorFlow อื่น วิธีการนี้ใช้เพื่อรับหมายเลขอ้างอิงสัญลักษณ์ที่แสดงถึงการคำนวณอินพุต

สร้าง Conv2d <T> แบบคงที่สาธารณะ (ขอบเขต ขอบเขต , อินพุต Operand <T>, ตัวกรอง Operand <T>, รายการ <Long> ก้าวย่าง, การขยายสตริง, ตัวเลือก... ตัวเลือก)

วิธีการจากโรงงานเพื่อสร้างคลาสที่รวมการดำเนินการ Conv2d ใหม่

พารามิเตอร์
ขอบเขต ขอบเขตปัจจุบัน
ป้อนข้อมูล เทนเซอร์ 4 มิติ ลำดับมิติได้รับการตีความตามค่าของ `data_format` โปรดดูรายละเอียดด้านล่าง
กรอง เทนเซอร์ 4 มิติของรูปร่าง `[filter_height, filter_width, in_channels, out_channels]`
ความก้าวหน้า เทนเซอร์ 1-D ที่มีความยาว 4 การก้าวของหน้าต่างบานเลื่อนสำหรับแต่ละมิติของ "อินพุต" ลำดับมิติถูกกำหนดโดยค่าของ `data_format` โปรดดูรายละเอียดด้านล่าง
การขยายความ ประเภทของอัลกอริธึมการเติมที่จะใช้
ตัวเลือก มีค่าแอตทริบิวต์ทางเลือก
การส่งคืน
  • อินสแตนซ์ใหม่ของ Conv2d

Conv2d.Options dataFormat แบบคงที่สาธารณะ (String dataFormat)

พารามิเตอร์
ข้อมูลรูปแบบ ระบุรูปแบบข้อมูลของข้อมูลอินพุตและเอาต์พุต ด้วยรูปแบบเริ่มต้น "NHWC" ข้อมูลจะถูกจัดเก็บตามลำดับ: [แบทช์ ความสูง ความกว้าง ช่อง] หรืออีกทางหนึ่ง รูปแบบอาจเป็น "NCHW" ซึ่งเป็นลำดับการจัดเก็บข้อมูลเป็น: [แบทช์ ช่อง ความสูง ความกว้าง]

การขยาย Conv2d.Options แบบคงที่สาธารณะ (การขยายรายการ <Long>)

พารามิเตอร์
การขยาย เทนเซอร์ 1-D ที่มีความยาว 4 ปัจจัยการขยายสำหรับแต่ละมิติของ "อินพุต" หากตั้งค่าเป็น k > 1 จะมีเซลล์ที่ข้าม k-1 ระหว่างองค์ประกอบตัวกรองแต่ละรายการในมิตินั้น ลำดับมิติจะกำหนดโดยค่าของ `data_format` โปรดดูรายละเอียดด้านบน การขยายขนาดแบทช์และความลึกต้องเป็น 1

สาธารณะ Conv2d.Options ชัดเจน Paddings (รายการ <ยาว> ชัดเจน Paddings)

พารามิเตอร์
ชัดเจนPaddings หาก `padding` เป็น `"EXPLICIT"` รายการของจำนวน padding ที่ชัดเจน สำหรับมิติที่ 3 จำนวนช่องว่างภายในที่แทรกก่อนและหลังมิติคือ `explicit_paddings[2 * i]` และ `explicit_paddings[2 * i + 1]` ตามลำดับ หาก `padding` ไม่ใช่ `"EXPLICIT"` `explicit_paddings` จะต้องเว้นว่างไว้

เอาท์พุท สาธารณะ <T> เอาท์พุท ()

เทนเซอร์ 4 มิติ ลำดับมิติถูกกำหนดโดยค่าของ `data_format` โปรดดูรายละเอียดด้านล่าง

Conv2d.Options คงที่สาธารณะ useCudnnOnGpu (useCudnnOnGpu แบบบูลีน)