ทำไม softmax เอาท์พุตจึงไม่ใช่สิ่งที่ไม่แน่นอนสำหรับการเรียนรู้แบบลึก?


22

ฉันได้ทำงานกับ Convolutional Neural Networks (CNNs) มาระยะหนึ่งแล้วซึ่งส่วนใหญ่เป็นข้อมูลภาพสำหรับเซกเมนต์เซกเมนต์ / เซกเมนต์อินสแตนซ์ ฉันมักจะเห็นภาพซอฟต์แม็กซ์ของเอาต์พุตเครือข่ายเป็น "แผนที่ความร้อน" เพื่อดูว่าการเปิดใช้งานพิกเซลต่อคลาสสำหรับระดับหนึ่งนั้นสูงเพียงใด ฉันตีความการเปิดใช้งานในระดับต่ำว่า "ไม่แน่นอน" / "ไม่มั่นใจ" และมีการเปิดใช้งานสูงตามการคาดการณ์ "มั่นใจ" / "มั่นใจ" โดยทั่วไปสิ่งนี้หมายถึงการตีความเอาต์พุต softmax (ค่าภายใน(0,1) ) เป็นความน่าจะเป็นหรือ (ไม่) การวัดความแน่นอนของโมเดล

( เช่นฉันตีความวัตถุ / พื้นที่ที่มีการเปิดใช้งานซอฟต์แม็กซ์ต่ำโดยเฉลี่ยอยู่ที่พิกเซลของมันยากสำหรับ CNN ในการตรวจจับดังนั้น CNN จึง "ไม่แน่ใจ" เกี่ยวกับการทำนายวัตถุชนิดนี้ )

ในการรับรู้ของฉันนี้มักจะทำงานและเพิ่มตัวอย่างเพิ่มเติมของพื้นที่ "ไม่แน่นอน" เพื่อผลลัพธ์การฝึกอบรมปรับปรุงผลลัพธ์เหล่านี้ อย่างไรก็ตามตอนนี้ฉันได้ยินมาค่อนข้างบ่อยจากหลาย ๆ ด้านที่การใช้ / การตีความเอาต์พุต softmax เป็นการวัดความมั่นใจ (un) ไม่ใช่ความคิดที่ดีและไม่แนะนำให้ใช้โดยทั่วไป ทำไม?


แก้ไข: เพื่อชี้แจงสิ่งที่ฉันถามที่นี่ฉันจะอธิบายรายละเอียดเกี่ยวกับข้อมูลเชิงลึกของฉันในการตอบคำถามนี้ อย่างไรก็ตามไม่มีการโต้แย้งใด ๆ ต่อไปนี้ที่ชัดเจนสำหรับฉัน ** เหตุใดจึงเป็นความคิดที่ไม่ดี ** ตามที่ฉันได้รับการบอกเล่าจากเพื่อนร่วมงานหัวหน้างานและมีการกล่าวเช่นในหัวข้อ "1.5"

ในแบบจำลองการจำแนก, เวกเตอร์ความน่าจะเป็นที่ได้รับในตอนท้ายของไปป์ไลน์ (เอาท์พุต softmax) มักถูกตีความผิดว่าเป็นความเชื่อมั่นของโมเดล

หรือที่นี่ในส่วน "พื้นหลัง" :

แม้ว่ามันอาจเป็นการล่อลวงในการตีความค่าที่กำหนดโดยชั้น softmax สุดท้ายของเครือข่ายประสาทเทียมในฐานะคะแนนความเชื่อมั่นเราต้องระวังไม่ให้อ่านมากเกินไปในเรื่องนี้


แหล่งข้อมูลด้านบนเหตุผลที่การใช้เอาต์พุต softmax เป็นการวัดความไม่แน่นอนนั้นไม่ดีเนื่องจาก:

ความยุ่งเหยิงที่มองไม่เห็นเป็นภาพที่แท้จริงสามารถเปลี่ยนเอาต์พุต softmax ของเครือข่ายที่ลึกเป็นค่าโดยพลการ

ซึ่งหมายความว่าเอาต์พุต softmax ไม่แข็งแกร่งสำหรับ "การก่อกวนที่มองไม่เห็น" และด้วยเหตุนี้เอาต์พุตจึงไม่สามารถใช้งานได้ตามความน่าจะเป็น

กระดาษอื่นหยิบขึ้นมาในแนวคิด "softmax output = มั่นใจ" และระบุว่าด้วยเครือข่ายสัญชาตญาณนี้สามารถถูกหลอกได้ง่ายทำให้เกิด "เอาต์พุตความมั่นใจสูงสำหรับภาพที่ไม่สามารถจดจำได้"

(... ) ภูมิภาค (ในโดเมนอินพุต) ที่ตรงกับคลาสเฉพาะอาจมีขนาดใหญ่กว่าพื้นที่ในพื้นที่นั้นซึ่งครอบครองโดยตัวอย่างการฝึกอบรมจากคลาสนั้น ผลของสิ่งนี้คือภาพอาจอยู่ในพื้นที่ที่กำหนดให้กับชั้นเรียนและจัดประเภทด้วยจุดสูงสุดขนาดใหญ่ในเอาต์พุต softmax ในขณะที่ยังห่างไกลจากภาพที่เกิดขึ้นตามธรรมชาติในชั้นเรียนในชุดฝึกอบรม

ซึ่งหมายความว่าข้อมูลที่อยู่ห่างไกลจากข้อมูลการฝึกอบรมไม่ควรมีความมั่นใจสูงเนื่องจากโมเดล "ไม่สามารถ" แน่ใจได้เกี่ยวกับมัน (เนื่องจากไม่เคยเห็นมาก่อน)

อย่างไรก็ตาม: นี่ไม่ได้เป็นเพียงแค่การถามคุณสมบัติทั่วไปของ NN ทั้งหมด? นั่นคือ NN ที่มีการสูญเสียซอฟต์แม็กซ์ไม่ได้พูดคุยกับ (1) "การก่อกวนที่มองไม่เห็น" หรือ (2) ตัวอย่างข้อมูลอินพุตที่อยู่ไกลจากข้อมูลการฝึกอบรมเช่นภาพที่ไม่สามารถจดจำได้

การทำตามเหตุผลนี้ฉันยังไม่เข้าใจว่าทำไมในทางปฏิบัติกับข้อมูลที่ไม่ได้มีการเปลี่ยนแปลงอย่างเป็นนามธรรมและมีการเปรียบเทียบกับข้อมูลการฝึกอบรม (เช่นแอปพลิเคชัน "ของจริง" ส่วนใหญ่) การตีความเอาต์พุต softmax ความคิด ท้ายที่สุดพวกเขาดูเหมือนจะเป็นตัวแทนที่ดีของแบบจำลองของฉันแม้ว่าจะไม่ถูกต้อง (ในกรณีนี้ฉันต้องแก้ไขแบบจำลองของฉัน) และความไม่แน่นอนของแบบจำลองไม่ใช่เพียงการประมาณเท่านั้น?


4
(-,)(0,1)

2
(0,1)(0,1)

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

คำตอบ:


14

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

ปัญหาที่เกิดขึ้นกับโครงข่ายประสาทเทียมจำนวนมากคือแม้ว่าพวกเขามีแนวโน้มที่จะทำงานได้ดีสำหรับการทำนาย แต่ความน่าจะเป็นที่คาดการณ์ของพวกเขาที่ผลิตโดยการส่งออกของเลเยอร์ softmax นั้นไม่สามารถใช้เป็นความน่าเชื่อถือที่แท้จริง ในทางปฏิบัติพวกเขามีแนวโน้มที่จะสูงเกินไป - เครือข่ายประสาทมีความมั่นใจมากเกินไปในการทำนาย

ชวนโกและ al. ทำงานร่วมกับ Kilian Weinberger พัฒนาโซลูชันที่มีประสิทธิภาพสำหรับการสอบเทียบความน่าจะเป็นที่คาดการณ์ของเครือข่ายประสาทในบทความนี้: https://arxiv.org/pdf/1706.04599.pdf

บทความนี้ยังอธิบายถึงวิธีการตีความความน่าจะเป็นที่คาดการณ์ได้ว่าเป็นมาตรการความเชื่อมั่นเมื่อความน่าจะเป็นที่คาดการณ์ได้รับการสอบเทียบอย่างถูกต้อง


1
ขอบคุณ @cgnorthcutt ฉันเคยได้ยินคนพูดถึงเรื่องนี้มาหลายครั้งแล้วและกำลังมองหาบทความนี้นับตั้งแต่นั้นมาการอ้างอิงที่ดีจริงๆ
Théophile Pace

สวยขอบคุณ นี่คือลิงค์ไปสู่บทคัดย่อ (แทนกระดาษ) สำหรับผู้ที่สนใจ: arxiv.org/abs/1706.04599
Waylon Flinn

3

สิ่งที่เรียกว่า softmax ใน ML มีสมการเช่นเดียวกับโลจิสติกพหุนามสมการ หลังสามารถใช้ในการคำนวณความน่าจะเป็น ในทางปฏิบัติมันถูกใช้อย่างกว้างขวางในการประเมินความน่าจะเป็นที่ผิดนัดในกรอบการแข่งขันความเสี่ยงสำหรับการจำนองเช่นดู Eq 4 ในบทความนี้

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

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


ขอบคุณสำหรับคำตอบ. สิ่งนี้จะลดลงไปถึง: ในบางกรณีมันจะเป็นวิธีการที่ถูกต้อง แต่โดยทั่วไปแล้วมันไม่ใช่ความคิดที่ดีเพราะมันไม่ได้มีประสิทธิภาพและไม่มีใครรู้ได้อย่างง่ายดาย
Honeybear

ฉันจะไม่ละทิ้งคำเช่น "แข็งแกร่ง" เพราะมีความหมายเฉพาะในสถิติ แต่คุณได้รับส่วนสำคัญของการโต้แย้งของฉัน หากคุณกำลังสร้างแบบจำลองความน่าจะเป็นโดยเฉพาะคุณอาจลงเอยด้วยสมการ softmax ในบางจุดและมันก็โอเคที่จะตีความผลลัพธ์เป็นความน่าจะเป็น ในกรณีทั่วไปการส่งออก softmax ไม่สอดคล้องกับความน่าจะเป็น
Aksakal

1

Softmax แจกจ่าย 'ความน่าจะเป็น' 0-1 ระหว่างคลาสที่มีอยู่ มันไม่ได้แสดงความไม่แน่นอนมันไม่ใช่ฟังก์ชั่น PDF หากคุณต้องการแสดงความไม่แน่นอนคุณควรมองเข้าไปในเครือข่ายประสาทแบบเบย์ ดูบทความนี้: ความไม่แน่นอนในการเรียนรู้ อย่างลึกกรอบความน่าจะเป็นบางกรอบที่ผ่านมา:

การปราศรัยสำคัญที่น่าสนใจโดย Zoubin Ghahramani (มหาวิทยาลัยเคมบริดจ์)

ดูกระดาษนี้: เครือข่ายความหนาแน่นของส่วนผสม :

ฉันเดาว่าคุณสามารถใช้มันและเพิ่มเป็นเลเยอร์สุดท้ายให้กับ CONVNET หากคุณใช้งานอย่าลืมการแบ่งปันคือการดูแล ;-) ขอให้โชคดี


โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.