การทอดสมอได้เร็วขึ้น RCNN


10

ในกระดาษ Faster RCNN ที่เร็วขึ้นเมื่อพูดถึงการทอดสมอสิ่งที่พวกเขาหมายถึงอะไรโดยใช้ "ปิรามิดของกล่องอ้างอิง" และสิ่งนี้จะทำอย่างไร นี่หมายความว่าแต่ละจุดยึด W * H * k แต่ละจุดจะถูกสร้างขึ้นหรือไม่?

โดยที่ W = ความกว้าง, H = ความสูง, และ k = จำนวนอัตราส่วนกว้างยาว * num scale

เชื่อมโยงไปยังกระดาษ: https://arxiv.org/abs/1506.01497


นี่เป็นคำถามที่ดีมาก
Michael R. Chernick

คำตอบ:


10

จุดยึดอธิบาย

แองเคอ

ในขณะนั้นให้เพิกเฉยต่อคำศัพท์แฟนซีของ "ปิรามิดแห่งกล่องอ้างอิง" จุดยึดไม่ใช่อะไรนอกจากรูปสี่เหลี่ยมผืนผ้าขนาดคงที่เพื่อป้อนเข้าสู่เครือข่ายข้อเสนอภูมิภาค แองเคอร์ถูกกำหนดไว้ในแผนผังคุณสมบัติของ Convolutional ล่าสุดซึ่งหมายความว่ามีของพวกมัน แต่ตรงกับรูปภาพ สำหรับสมอแต่ละอัน RPN จะทำนายความน่าจะเป็นของการบรรจุวัตถุโดยทั่วไปและพิกัดการแก้ไขสี่ค่าเพื่อย้ายและปรับขนาดสมอให้อยู่ในตำแหน่งที่เหมาะสม แต่เรขาคณิตของแองเคอร์ต้องทำอะไรกับ RPN ได้อย่างไร (Hอีaเสื้อยูRอีม.aพี* * * *Wอีaเสื้อยูRอีม.aพี)* * * *(k)

จุดยึดปรากฏขึ้นจริงในฟังก์ชันการสูญเสีย

เมื่อฝึกอบรม RPN อันดับแรกของคลาสฉลากจะถูกกำหนดให้กับแต่ละจุดยึด จุดยึดที่มีIntersection-over-Union ( IoU ) ทับซ้อนกันกับกล่องความจริงพื้นดินซึ่งสูงกว่าขีด จำกัด ที่กำหนดจะได้รับป้ายกำกับที่เป็นบวก (เช่นจุดยึดที่มี IoUs น้อยกว่าขีด จำกัด ที่กำหนด ป้ายเหล่านี้ถูกใช้เพื่อคำนวณฟังก์ชันการสูญเสียเพิ่มเติม:

ฟังก์ชั่นการสูญเสีย RPN

พีคือผลลัพธ์การจัดประเภทหัวของ RPN ที่กำหนดความน่าจะเป็นของสมอที่มีวัตถุ สำหรับจุดยึดที่ติดป้ายว่าเป็นค่าลบจะไม่มีการสูญเสียใด ๆ เกิดขึ้นจากการถดถอย -ฉลากความจริงภาคพื้นดินเป็นศูนย์ กล่าวอีกนัยหนึ่งเครือข่ายไม่สนใจเกี่ยวกับพิกัดเอาท์พุทสำหรับจุดยึดเชิงลบและมีความสุขตราบใดที่มันจำแนกอย่างถูกต้อง ในกรณีของจุดยึดที่เป็นบวกจะพิจารณาการสูญเสียการถดถอย คือเอาท์พุทหัวถดถอยของ RPN เวกเตอร์ที่แสดงถึงพิกัด 4 พารามิเตอร์ของกล่องขอบเขตที่ทำนาย การกำหนดพารามิเตอร์ขึ้นอยู่กับเรขาคณิตของสมอและเป็นดังนี้:พี* * * *เสื้อ

ป้อนคำอธิบายรูปภาพที่นี่

โดยที่และ h แสดงถึงพิกัดกึ่งกลางของกล่องและความกว้างและความสูง ตัวแปรและสำหรับกล่องที่คาดการณ์กล่องยึดและกล่องภาคพื้นจริงตามลำดับ (เช่นเดียวกับ )x,Y,W,x,xa,x* * * *Y,W,ชั่วโมง

แจ้งให้ทราบถึงจุดยึดที่ไม่มีป้ายกำกับไม่ได้ถูกจัดประเภทหรือปรับเปลี่ยนใหม่และ RPM เพียงแค่โยนออกจากการคำนวณ เมื่องานของ RPN เสร็จสิ้นและมีการสร้างข้อเสนอส่วนที่เหลือจะคล้ายกับ Fast R-CNNs มาก


@Fathi แล้วถ้าเรามีหลายคลาสล่ะ? เท่าที่ฉันรู้ใน Fast R-CNN การฝึกอบรมแต่ละครั้งที่ RoI ได้รับมอบหมายให้เป็นชั้นความจริงระดับเดียว ดังนั้นฉันเดาสิ่งที่คล้ายกันเกิดขึ้นที่นี่
thanasissdr

@Fathi ฉันเห็นด้วยกับสิ่งที่คุณพูดดังนั้นฉันคิดว่าคุณเห็นด้วยกับฉัน ฉันหมายถึงผู้เขียนบทความต้นฉบับสำหรับ Faster R-CNN ใช้เพียงสองคลาส (พื้นหลัง / วัตถุ) เพื่อความเรียบง่ายพยายามอธิบายว่า RPN ทำงานได้จริงไหม? ดังนั้นแทนที่จะมีเพียงสองคลาสฉันสามารถมีมากกว่าสองชั้นและฉันเดาว่าฉันสามารถใช้ฟังก์ชั่นการสูญเสียเอนโทรปีของครอสโอเวอร์ได้
thanasissdr

@thanasissdr ความคิดพื้นฐานที่อยู่เบื้องหลัง Faster R-CNN ก็คือ "เมื่ออวนประสาทดีมากในทุกสิ่งทำไมไม่ลองใช้มันกับข้อเสนอของภูมิภาคล่ะ?" การเปรียบเทียบ Fast R-CNN กับ R-CNN มาตรฐานข้อแตกต่างเพียงอย่างเดียวคือข้อเสนอของ RoI - ซึ่งทำขึ้นอีกครั้งโดยใช้เทคนิคแบบเดิมเช่น SelectiveSearch หรือ EdgeBoxes - จะถูกแมปจากภาพดิบไปจนถึงคุณสมบัติ convolutional สโมสรฟุตบอล วิธีนี้จะไม่มีการข้ามกระบวนการส่งต่อของแต่ละ RoI ถึง CNN
Mahan Fathi

ในเร็ว R-CNN RPN เรียนรู้ที่จะเสนอภูมิภาคที่เหมาะสม เมื่อ RPN เสร็จสิ้นแล้วส่วนที่เหลือจะคล้ายกับ Fast R-CNN และ FCs จัดประเภทและถอยข้อเสนอ
Mahan Fathi

@thanasissdr ใช่ เราอยู่ในหน้าเดียวกัน ฉันคิดว่าคุณสามารถจัดประเภทใน RPN ได้ แต่นั่นไม่จำเป็นเนื่องจาก FC net จัดหมวดหมู่อีกครั้งและไม่มีปัญหาในการปฏิเสธข้อเสนอขยะ ลองคิดถึงท่อส่งคุณจะใช้คะแนนการจำแนกประเภทอย่างไรและพวกเขาต้องการความช่วยเหลืออย่างไร ขาตั้งสุดท้ายของฉันคือการจำแนก (พื้นหลัง / วัตถุ) เป็นรากฐานที่สำคัญใน Faster R-CNN ที่เร็วขึ้น
Mahan Fathi

1

ฉันอ่านเอกสารนี้เมื่อวานนี้และตั้งแต่แรกเห็นฉันก็สับสนเช่นกัน หลังจากอ่านอีกครั้งฉันมาถึงข้อสรุปนี้:

  • เลเยอร์สุดท้ายของเครือข่ายดั้งเดิม (ZF หรือ VGG-16) ทำหน้าที่เป็นอินพุตสำหรับเครือข่ายข้อเสนอภูมิภาคและการรวมกำไร RoI ในกรณีของ VGG-16 7x7x512 (HxWxD)ชั้นแปลงสุดท้ายนี้เป็น
  • ชั้นนี้ถูกแมปไปยังชั้น 512 มิติพร้อม3x3ชั้น Conv ขนาดเอาต์พุตคือ7x7x512(หากใช้การแพ็ดดิง)
  • เลเยอร์นี้ถูกแมปกับเลเยอร์7x7x(2k+4k)(เช่น7x7x54) พร้อม1x1ชั้น Conv สำหรับkกล่องสมอแต่ละอัน

ตอนนี้ตามรูปที่ 1 ในกระดาษคุณสามารถมีปิรามิดของภาพอินพุต (รูปภาพเดียวกันที่มีสเกลต่างกัน) ปิรามิดของฟิลเตอร์ (ฟิลเตอร์ของสเกลต่าง ๆ ในเลเยอร์เดียวกัน) หรือปิรามิดของกล่องอ้างอิง หนึ่งหลังอ้างถึงkกล่องยึดที่ชั้นสุดท้ายของเครือข่ายข้อเสนอภูมิภาค แทนที่จะเป็นตัวกรองที่มีขนาดแตกต่างกันซึ่งซ้อนกันอยู่ด้านบน (ตัวพิมพ์กลาง) ตัวกรองที่มีขนาดและอัตราส่วนต่างกันจะซ้อนกันที่ด้านบนของกันและกัน

กล่าวโดยย่อสำหรับแต่ละจุดยึด ( HxWเช่น7x7) ใช้ปิรามิดของกล่องอ้างอิง ( kเช่น9)


แต่กล่องยึดคืออะไร จุดประสงค์ของแต่ละกล่องสมอ: ใช้เป็นอินพุตของ RPN เพื่อทำนายเดลต้าในความกว้างและความสูงของกล่องสมอสำหรับแต่ละกล่องสมอที่ถือว่าเป็นส่วนหนึ่งของพื้นหน้า?
BadProgrammer

RPN ทำนายทั้งการเปลี่ยนแปลงเดลต้าของตำแหน่งหน้าและคะแนนความเป็นกลาง หลังพยายามคาดการณ์อย่างชัดเจนว่าเป็นพื้นหลังหรือส่วนหน้า (หรือดูเชิงอรรถ 3)
Pieter

คุณสามารถอธิบายได้อย่างไรว่า3x3เลเยอร์ Conv แปลเป็น7x7อย่างไร ใน prototxt มันบอกว่า padding คือ 1 ในเลเยอร์ VGG16 ที่ผ่านมา
คลิกที่
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.